首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。例如: 输入:Th
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。例如: 输入:Th
admin
2020-06-29
63
问题
使用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数纽中已存在该元素,将标志位设置为假,说明不用再添加 brea k;//des数组中已存在该元素,跳出循环 } } if(ToAdd)//des数组中不存在,添加进来 { deS[j]=Str[i]; des[j+1]=0; } }
解析
convert(char*des,char*str)函数的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。原来的字符串存放在str指向的数组中,新字符串存放在des指向的数组中,因此可逐个读取str指向的数组里面的字符,把不同的字符放入des指向的数组中,即每次读str指向的数组一个字符,就在des指向的数组里面查找是不是已经有该字符了,如果已经有了则不添加进来,反之则把该字符加入到des指向的数组中。
(1)由审题分析可知,需要两重循环,外层循环不断读取str中的元素,内循环在des数组中查找读到的str中的字符,如果找到了des数组中已存在该元素不需要添加,如果没找到则添加到des数组中。
(2)在外循环体内,先设置bool型的标志变量ToAdd为真,假设str
不存在在des数组中,然后再内循环中,用str
和des[j]比较,如果相同说明已经存在了,将ToAdd设置为假.des[j]后面的元素不需要再比较了,跳出内循环。
(3)通过判断ToAdd可知,str
是否存在des数组中,如果ToAdd为真,则说明des数组中不存在str
,将str
添加到des数组中。
转载请注明原文地址:https://kaotiyun.com/show/ri8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列叙述中错误的是()。
语句ofstreamf("DATA.DAT",ios_base::applios_lios_base::binary);的功能是建立流对象f,并试图打开文件DATA.DAT并与之连接,而且()。
定义一个具有10个元素的整型数组,应当使用语句是______。
下列有关继承和派生的叙述中,正确的是()。
与C语言prinft("Helloword/n");语句功能相同的C++语句是()。
下列叙述中正确的是
下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该程序。classMyclas{int*x;public:MyClas(intn);~MyClas();};
下列有关模板的叙述中,正确的是()。
下列有关运算符重载的叙述中,正确的是()。
下列有关C++流的叙述中,错误的是()。
随机试题
能促进胸腺细胞分化的细胞是()。
窗的主要作用有()。
关于征收耕地的补偿费用的说法,正确的有()。
开展会计职业道德警示教育的目的和作用,就是要使会计从业人员()。
按照《民用建筑可靠性鉴定标准》,民用建筑的可靠性鉴定,应按()划分的层次,以其安全性和正常使用性的鉴定结果为依据逐层进行。
间隔一段时间对某测验的两个复本再进行信度评估()。
马克思主义对人与自然关系论述包括()几个方面。
在国际化的进程中,我们要办好现代化大学,既需要继承好固有的文化传统,同时,也要________、借鉴西方优秀的办学经验。填入画横线部分最恰当的一项是()。
“曲高和寡”出自战国宋玉的《对楚王问》,这一成语的本义是曲调高深,能跟着唱的人很少,多指知音难得。引申义是言论或作品不通俗,能了解的人很少。如果从经济学的角度来理解,它所体现出的道理是()。
A、Toeducateyoungpeople.B、Toincreasethecigarettes’prices.C、Tohelpsmokersgiveupsmoking.D、Totaketoughermeasures.
最新回复
(
0
)