首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
2018-10-23
45
问题
使用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)。
1 #include<iostream.h>
2 #include<cstring>
3 #define MAXLEN 1024
4 void convert(char* des,char*str,char*str2)
5 {
6
7 }
8 void main()
9 {
10 char dest[MAXLEN];
11 char* str=’’!&cefghi*!&’’;
12 char* dtr2=’’jklm’’;
13 convert(dest,str,str2);
14 cout<<dest<<end1;
15 return;
16 }
选项
答案
1 des[0]=0; 2 char temp[2]={0,0}; 3 for(int i=0;str[i]!=NULL;i++) 4 { 5 if(str[i]==’!’) 6 { 7 temp[0]=’a’; //替换成’a’ 8 strcat(des,temp); 9 } 10 else if(str[i]==’&’) 11 { 12 temp[0]=’b’; 13 strcat(des,temp);//替换成’b’ 14 } 15 else if(str[i]==’*’) 16 { 17 strcat(des,str2);//替换成str2 18 } 19 else 20 { 21 temp[0]=str[i]j 22 strcat(des,temp);//其他情况则添加在后面 23 } 24 }
解析
函数convert(char*des,char*str,charc,char*str2)的功能是将str中包含的特定字符替换成其他字符,因此可利用循环搜索str字符串,找到特定字符后进行替换。
(1)由审题分析可知,利用循环中不断检索str字符串每一个字符,循环变量i从0开始,直到到了sir字符结束,即srt
=NULL为循环判断结束条件。
(2)在循环体内,用ifelse语句判断是不是“!”、“&”或“*”这些特定的字符,如果是这些特定的字符则进行相应的替换,如果不是则将该字符直接加在des后面。
(3)字符串的连接可以使用字符串连接函数strcat(),将新字符连接在des后面,即strcat(des,temp)。
转载请注明原文地址:https://kaotiyun.com/show/HwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关系模型允许定义3类数据约束,下列不属于数据约束的是()。
下面程序的结果是#include"iostream.h"voidmain(){char*str;Str="test!";cout<<str[5];}
一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本,此虚函数又称为()。
有下列程序:#include<iostream>usingnamespacestd;classTest{public:Test(){n+=2;}~Test(){n-=3;}s
阅读下面程序:#include<iostream.h>intfun2(intm){if(m%3==0)return1;elsereturn0;}voidfun1(intm
下列各类函数中,不是类的成员函数的是()。
以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是()。
对于下面定义的类MyClass,请在函数f()中添加对象成员把n的值修改为50。ClassMyClass{Public:MyClass(intx){n=x;)VoidSetNum(intnl){n=nl;}
冒泡排序算法在最好的情况下的元素交换次数为______。
以下不使用线性结构表示实体之间联系的模型的是()。
随机试题
知识管理
影响创伤愈合的局部因素中下列哪项除外
A.溶出原理B.扩散原理C.渗透压原理D.离子交换作用E.溶蚀与溶出、扩散结合原理增加黏度以减小扩散速度、包衣、制微囊、不溶性骨架片、植入剂、乳剂等,是利用()。
免疫耐受性的终止和破坏是自身免疫病发生的根本机制。()
根据清正廉洁的要求,法官的下列行为应该禁止:
桥式起重机车轮轮缘磨损量超过原厚度的( )时,则应报废更换。
甲公司系2001年成立,并开始执行《企业会计制度》,甲公司对所得税采用债务法核算,适用的所得税税率为33%,可抵减时间性差异预计能够在三年内转回。每年按净利润的10%和5%分别计提法定盈余公积和法定公益金。(1)甲公司2001年12月购入生产设备,原
企业对境外经营财务报表折算时,下列各项中,应当采用资产负债表日即期汇率折算的有()。
和基础教育一样,医疗卫生_________地拥有公共产品的属性。但在市场化的改革中,它们都曾经_________了公益性质,也因而带来了种种矛盾。依次填入画横线部分最恰当的一项是()。
Whenshehandedinhertermpaperlate,Diane________astorythathercomputerhadcrashed.Thetruthisthatshedoesn’tevenu
最新回复
(
0
)