首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。例如: 输入:Th
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。例如: 输入:Th
admin
2019-05-29
80
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。例如:
输入:This is great!
输出:This grea!
注意:不能修改程序的其他部分,只能补充fun()函数。
#include
#define MAXLEN 1024
void convert(char*des,char*str)
{
}
void main()
{
char sour[MAXLEN];
char dest[MAXLEN];
cout<<"Please input a string:
"<
cin.getline(sour,MAXLEN);
convert(dest,sour);
cout<
return;
}
选项
答案
int i,j; bool ToAdd; des[0]=0; for(i=0;str[i]!=NULL;i++) { ToAdd=true; for(j=0;des[j]!=NULL;j++) { if(str[i]==des[j]) { ToAdd=false;//des数组中已存在该元素,将标志位设置为假,说明不用再添加 break;//des数组中已存在该元素,跳出循环 } } if(ToAdd)//des数组中不存在,添加进来 { des[j]=Str[i]; des[j+1]=0; } }
解析
(1)由审题分析可知,需要两重循环,外层循环不断读取str中的元素,内循环在des数组中查找读到的str中的字符,如果找到了des数组中已存在该元素不需要添加,如果没找到则添加到des数组中。
(2)在外循环体内,先设置bool型的标志变量ToAdd为真,假设在des数组中str
不存在,然后再内循环中,用str
和des[j]比较,如果相同说明已经存在了,将ToAdd设置为假,des[j]后面的元素不需要再比较了,跳出内循环。
(3)通过判断ToAdd可知,str
是否存在des数组中,如果ToAdd为真,则说明des数组中不存在str
,将str
添加到des数组中。
转载请注明原文地址:https://kaotiyun.com/show/z68p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 B数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。
2首先声明为private的“private:intj;”中j为私有成员。然后在类中没有指定,系统默认为私有。即“inti:”中的i也是私有成员。所以本题中的私有成员数量为2。
A、 B、 C、 D、 BPoint&operator++(){x++;return*this;}是在成员函数运算符重载单目运算符(前缀方式),Pointoperator++(int){Poin
A、 B、 C、 D、 Ccin是istream输入流类的派生类istream_withassign对象。cout是ostream输出流类的派生类ostream_withassign对象。
A、 B、 C、 D、 CC是传值调用,所以被调函数中形参值改变不会影响到实参,而且没有返回值,所以不会对调用函数产生影响。A是把引用作为函数参数,D是把指针作为函数参数,都属于传地址调用,改变形参均会影响参
A、 B、 C、 D、 D在C++中,数组的下标为0~Ⅳ-1,如果定义数组指针,则指针刚开始时是指向数组的头元素
A、 B、 C、 D、 C采用intA[]={3,4,9,8}定义数组A,则A中只有4个元素,而题干要求的是7个元素,A[4]、A[5]、A[6]3个元素就不存在。
若有类声明:classMyClass{public:MyClass(){cout<<1;}};执行下列语句MyClassa,b[2],*P[2];以后,程序的输出结果是A)11
针对数组定义intdata[10];,下列叙述中错误的是A)用*data可访问到数组的首元素B)用data[9]可访问到数组的末元素C)用data[10]访问数组元素会超出数组的边界D)data共有10个元素,其首元素是data[1]
下列关于栈的叙述中,正确的选项是()。
随机试题
与碘化铋钾试剂产生橙黄色沉淀的中药材为
A.银量法B.溴量法C.紫外分光光度法D.熔点测定法E.碱水解后银量法
试验检测单位应当对从业人员进行安全生产教育和培训,保证从业人员具备必要的安全生产知识,熟悉有关的安全生产规章制度和安全操作规程,掌握本岗位的安全操作技能。()
步行街两侧的商铺在上部各层设置和连接天桥时,应保证步行街上部各层开口面积不应小于步行街地面面积的()。
【背景材料】材料一:近年来,我国旅游业发展突飞猛进,然而,景区门票涨价、景区消费高等乱象层出不穷,严重侵害了游客的合法权益,阻碍了旅游业的健康发展。经暗访发现,在价格方面,很多景区都存在擅自增设收费项目,提高门票价格,不落实门票价格减免优惠政策,针对外地
从“过失犯罪不是故意犯罪,共同犯罪是故意犯罪,因此共同犯罪不是过失犯罪。而合伙走私是共同犯罪”可以推知( )
根据以下资料,回答下列问题。下列说法中,正确的是:
以下关于函数过程的叙述中,正确的是
A:您好!怀特先生。我叫夏征,是天明电机进口公司的副总经理。虽然这是我们首次见面,但在过去的函电往来中,我经常见到您的名字,久仰了。B:ThisismyfirstvisittothemetropolisofGuangzhouand
A、achieveexpectedresultsB、lastanother3yearsC、resumeinDecemberD、cometoanendnextyearC
最新回复
(
0
)