首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des*char*str,char c,char*str2)的功能是: 如果str中包含字符“!”,则替换成’a’;
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des*char*str,char c,char*str2)的功能是: 如果str中包含字符“!”,则替换成’a’;
admin
2020-10-21
58
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des*char*str,char c,char*str2)的功能是:
如果str中包含字符“!”,则替换成’a’;
如果str中包含字符“&”,则替换成’b’;
如果str中包含字符“*”,则替换成str2。
并用函数返回目标转换后的指针。
注意:只能补充函数convert(char*des.char*str,char*str2)。
#include
#include
#define MAXLEN 1024
void convert(char*des,char*
str,char*str2)
{
}
Void main()
{
char dest[MAXLEN];
char*str="!&cefghi*!&";
char*str2="jklm";
convert(dest,str,str2);
cout<
return;
}
选项
答案
des[0]=0; char temp[2]={0,0); for(int i=0;str[i]!=NULL;i++) { if(str[i]==’!’) { temp[0]=’a’; //替换成’a’ strcat(des,temp); } else if(str[i]==’&’) { temp[0]=’b’; strcat(des,temp); //替换成’b’ } else if(str[i]==’*’) { strcat(des,str2); //替换成str2 } else { temp[0]=str[i]; strcat(des,temp); //其他情况则添加在后面 } }
解析
(1)由审题分析可知,利用循环中不断检索str字符串每一个字符,循环变量i从0开始,直到到了sir字符结束,即srt
==NULL为循环判断结束条件。
(2)在循环体内,用ifelse语句判断是不是“!”、“&”或“*”这些特定的字符,如果是这些特定的字符则进行相应的替换,如果不是则将该字符直接加在des后面。
(3)字符串的连接可以使用字符串连接函数strcat(),将新字符连接在des后面,即strcat(des,temp)。
转载请注明原文地址:https://kaotiyun.com/show/Awyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于函数中的,下列表述中错误的是()。
己知函数FA调用FB,若要把这两个函数定义在同一个文件中,则()。
有如下程序:#includeusingnamespacestd;classBase{public:Base(intx=0):valB(x){cout
有如下程序:#includeusingnamespacestd;classXX{intx;public:XX(intxx=0):x(xx){}intgetX(){ret
下列选项中,正确的C++表达式是()。
如下函数的作用是以双倍行距输出文件:voiddouble_space(ifstream&f,ofstream&t){charc;whilc(________){;________if(c==’\
对长度为n的线性表作快速排序,在最坏情况下,比较次数为()。
下列运算符不能重载为友元函数的是()。
使用VC6打开考生文件夹proj2下的工程proj2,其中有元素类Element和队列类Queue的定义。请在程序中的横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的输出结果应为:3850507注意:只
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)利用define定义常量TRUE为1,定义常量FALSE为0,请在注释//********1*******
随机试题
工伤预防(industrialinjuryprevention)
张若虚《春江花月夜》结构的基本线索是()。
计算∫Lex[(1-cosy)dx-(y-siny)dy],其中L是y=sinx从O(0,0)到B(π,0)的一段弧,要求利用格林公式.
男,50岁,右背部皮肤红肿3天,中央多个脓点,范围约4cm,界限不清。疼痛较剧,畏寒、发热。最可能的诊断是
发生急性猪丹毒时,脾脏的病变是()
一名注册监理工程师要同时担任3项建设工程的总监理工程师时,应()。
下列关于党委的政治领导与政府的行政领导的说法,正确的有()。
[*]
在窗体上画一个名称为Command1的命令按钮,并编写如下过程:PrivateSubCommand1_Click()DimxASIntegerStaticyAsIntegerx=10
有以下程序:#includeint*sum(intdata){staticintinit=1;init+=data;retum&init;}main(){in
最新回复
(
0
)