首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
67
问题
使用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://www.kaotiyun.com/show/a2fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;intmain(){intf,f1=0,f2=1;for(inti=3;i
有如下程序:#includeusingnamespacestd;classC1{public:~C1(){cout
下列选项中不属于面向对象程序设计特征的是
在学生管理的关系数据库中,存取一个学生信息的数据单位是
下列对于软件测试的描述中正确的是
数据流图中带有箭头的线段表示的是
定义学生选修课程的关系模式:SC(S#,Sn,C#,Cn,G)(其属性分别为学号、姓名、课程号、课程名、成绩)则该关系的主键为
请打开考生文件夹下的解决方案文件proj3,其中包含主程序文件main.cpp和用户定义的头文件Array.h,整个程序包含有类Array的定义和主函数main的定义。请把主程序文件中的Array类的成员函数Contrary()的定义补充完整,经补充后运
已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()。
随机试题
AnofficetoweronMillerStreetinManchesteriscompletelycoveredinsolarpanels.Theyareusedtocreatesomeoftheenergy
A.1周左右B.2周左右C.3周左右D.4周左右肠伤寒溃疡多发生于病程的
下列对药物用量的叙述中,正确的是
男性,72岁。因胸骨后不适,进食时有滞留感一年就诊。滞留感常在进食固体食物时出现,无呕吐,无明显消瘦,有进食热粥习惯五十余年。查体:皮肤黏膜未见黄染、出血点,锁骨上淋巴结未扪及,心肺听诊无异常,腹平软,肝脾肋下未触及。拟需要考虑的诊断是
肾炎性肾病的临床表现,哪项是正确的
人行桥是按()进行分类的。
绘制海陆风示意图,并简要说明海陆风的形成原因。
资产阶级代议制的主要特征是()。
求极限。
Whatdoesthewomandointheconversation?
最新回复
(
0
)