首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
57
问题
使用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://www.kaotiyun.com/show/HwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是______。#include<iostream.h>voidmain(){inta=0;a+=(a=8);cout<<a;}
下列关于C++函数的说明中,正确的是()。
关于下列程序段的描述中,正确的是()。#include<iostream.h>intfun(int,int);voidmain(){cout<<fun(1,2)<<endl;
下列程序的输出结果是()。#include<iostream>usingnamespacestd;intmain(){chara[]="Hello,Test";char
有如下程序:#include<iostream>usingnamespacestd;classMyClass{public:MyClass(intx):val(x){}void
若类A和类B的定义如下:#include<malloc.h>classA{inti,j;public:intgeti(){returni;}};classB:
二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是______。
需求分析阶段的任务是确定
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。
设有定义:classperson{intnum;charname[10];public:voidinit(intn,char*m)};personstd[30]则以下叙述不正确的是(
随机试题
男性,25岁,低热盗汗3个月,结核PPD实验(+),行胸腔穿刺抽液,当抽取草黄色液体30ml时,患者突感头晕心悸,脸色苍白,四肢凉,查体发现脉搏细弱。此时应如何处理病人
如图所示,在上部为气体下部为水的封闭容器上装有U形水银测压计,其中1、2、3点位于同一平面上,其压强关系为:
《中华人民共和国安全生产法》第二十四条规定:“生产经营单位新建、改建、扩建工程项目的安全设施,必须与主体工程同时设计、同时施工、同时投入生产和使用。安全设施投资应当纳入( )”。
报关企业有下列情形之一的,适用D类管理:
(2016年)下列各项属于经济周期中萧条阶段采用的财务管理战略的有()。
2010年10月19日,我国发布了《xBRL,(可扩展商业报告语言)技术规范系列国家标准和通用分类标准》。下列财务管理环境中,随之得到改善的是()。(2011年)
某化学教师在一次化学测验中设计了下列试题并对部分同学的解题结果进行了统计和分析。【试题】硫酸锰广泛应用于医药、食品、造纸等行业,硫酸锰的溶解度曲线如图所示,下列说法正确的是()。A.硫酸锰的溶解度随温度的升高而增大B.硫酸锰的溶
IwillneverforgettheyearIwasabouttwelveyearsold.Mymothertoldusthatwewouldnotbe【16】Christmasgiftsbecausethe
材料题根据以下资料,回答下列问题。注:排名前20名的高校、科研院校有:北京工业大学、电子科技大学、哈尔滨工业大学、清华大学、北京航天航空大学、华南理工大学、浙江大学、西安电子科技大学及中国科学院,其余均为企业。根据资料,下列关于我国2000~
投资市场相反理论是指投资市场本身并不创造新的价值,没有增值,甚至可以说是减值,如果一个投资者在投资行动时同多数投资者相同,那么他一定不是获利最大的,因为不可能多数人获利;要获得最大的利益,一定要同多数人的行动不一致。 根据上述定义,下列选项不符合投资市
最新回复
(
0
)