首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(char*s,char*s1,char*s2)中形参字符串s1和s2有相同的字符个数,且s1中各字符互不相同。该函数实现将已知字符串S中所有在字
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(char*s,char*s1,char*s2)中形参字符串s1和s2有相同的字符个数,且s1中各字符互不相同。该函数实现将已知字符串S中所有在字
admin
2021-02-22
65
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(char*s,char*s1,char*s2)中形参字符串s1和s2有相同的字符个数,且s1中各字符互不相同。该函数实现将已知字符串S中所有在字符串s1中也存在的字符,都用字符串s2中的对应位置的字符代替。
例如:设字符串S、sl和s2分别为:
S[]="ABCABC",
s1[]="AC",
s2[]="ZX"
则s2中的字符Z和X分别对应s1中的字符C和A,函数调用fun(s,s1,s2)将字符串S的内容变为"ZBXZBX"。
注意:不能修改程序的其他部分,只能修改fun()函数。
#include
void fun(char*s,char*s1,char
*s2)
{
}
Void main()
{
char s[]="ABCABC";
fun(s,"AC","ZX");
std::cout<
return;
}
选项
答案
char*p,*q; for(;*s;s++) //在串s中找符合条件的字符,然后替换 { for(p=s1,q=s2;*p;p++,q++) //让指针p,q分别指向s1和s2 { if(*p==*s) //如果s中存在s1中p指向的字符 { *s=*q; //那么用q指向的s2中的字符替换 } } }
解析
(1)让指针p,q分别指向s1和s2。
(2)然后利用for循环对s中的每一个当前字符与p指向的字符进行比较。
(3)如果(2)中的比较结果相等,那么用q指向s2中对应的字符替换。
转载请注明原文地址:https://kaotiyun.com/show/a2fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序#includeusingnamespacestd;intmain(){chara:cin>>a;if(a=’*’)cout
有如下程序#includeusingnamespacestd;classBase{protected:Base(){tout
有如下程序:#includeusingnamespacestd;classBase{public:voidfun1(){cout
在软件生命周期中,能准确确定软件系统必须做什么和必须具备哪些功能的阶段是
下列关于模板的描述中,错误的是()。
以下程序的输出结果是()。main(){inta=4,b=5,c=0,d;d=!a&&!b‖!C;cout
()使一个函数可以定义成对许多不同数据类型完成同一个任务。
若有定义“intx=4,y=5;”,则表达式“y>x++?x--:y++”的值为()。
给定程序中,函数fun的功能是将不带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。请在程序的中括号处填入正确的内容并把中括号删除,使程序得出正确的结果。注意
下列数据结构中,能够按照“先进后出”原则存取数据的是()。
随机试题
A.磷脂酰胆碱B.溶血磷脂C.三酰甘油D.二酰甘油E.脂酰辅酶A激素敏感脂肪酶的底物
羊水栓塞患者抢救过程中,解除肺动脉高压首选
乳腺癌局部检查中,下列哪项提示预后最差()
急性肾小球肾炎并发急性肾衰竭常出现在()
导游人员年审管理中,要求导游人员必须参加所在地旅游行政管理部门举办的年审培训,每年累计培训时间不得少于()
关于影响时间知觉的因素,正确的说法包括()。
(2015·河南)艾宾浩斯研究遗忘的方法是()
某班男生人数比女生人数的一半多12人,女生人数比男生人数的1/3多31人,问这个班共有多少人?
【S1】【S2】
WhichistheCORRECTorderofAmericancollegedegree?
最新回复
(
0
)