首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。 例如: 输入:T
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。 例如: 输入:T
admin
2015-05-30
59
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。
例如:
输入:This is great!
输出:This grea!
注意:不能修改程序的其他部分,只能补充fun()函数。
1 #include
2 #define MAXLEN 1024
3 void convert(char*des,char*str)
4 {
5
6 }
7 void main()
8 {
9 char sour[MAXLEN];
10 char dest[MAXLEN];
11 cout<<"Please input a string:"<
12 cin.getline(sour,MAXLEN);
13 convert(dest,sour);
14 cout<
15 return;
16 }
选项
答案
1 int i,J; 2 bool ToAdd; 3 des[0]=0; 4 for(i=0;str[i]!=NULL;i++) 5 { 6 ToAdd=true; 7 for(J=0 ; deS[j]!=NULL; j++) 8 { 9 if(str[i]==des[j]) 10 { 11 ToAdd=false;//des数组中已存在该元素,将标志位设置为假,说明不用再添加 12 break;//des数组中已存在该元素,跳出循环 13 } 14 } 15 if(ToAdd)//des数组中不存在,添加进来 16 { 17 des[j]=str[i]; 18 des[j+1]=0 ; 19 } 20 }
解析
convert(char*des,char*str)函数的功能是去掉字符串str中相同的字母,并将处理后的结果存到des所指的字符串中。原来的字符串存放在s仃指向的数组中,新字符串存放在des指向的数组中,因此可逐个读取str指向的数组里面的字符,把不同的字符放入des指向的数组中,即每次读str指向的数组一个字符,就在des指向的数组里面查找是不是已经有该字符了,如果已经有了则不添加进来,反之则把该字符加入到des指向的数组中。
[解题思路]
(1)由审题分析可知,需要两重循环,外层循环不断读取str中的元素,内循环在des数组中查找读到的str中的字符,如果找到了des数组中已存在该元素不需要添加,如果没找到则添加到des数组中。
(2)在外循环体内,先设置bool型的标志变量ToAdd为真,假设str
不存在在des数组中,然后再内循环中,用str
~H des[j]比较,如果相同说明已经存在了,将ToAdd设置为假,des[j]后面的元素不需要再比较了,跳出内循环。
(3)通过判断ToAdd可知,str
是否存在des数组中,如果ToAdd为真,则说明des数组中不存在str
,将str
添加到des数组中。
转载请注明原文地址:https://kaotiyun.com/show/5PNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序输出结果是______。#include<iostream.h>voidmain(){ inta[3][3]={1,3,5,7,9,10,13,15,17},sum=0,i,j;for(i=0;i<3:
使用fstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为()。
数据库系统的基础是()。
类MyClass的定义如下:classMyClass{public:MyClass(){}MyClass(inti){value=newint(i);}int*value;
当需要将一个函数boolisnumber(charc)声明为内联函数时,则此内联函数的函数原型为()。
下列类的定义中,有()处语法错误。classBase{publiC:Base(){}Base(inti){data=i;}ptivate:
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言是______。
关于抽象类,下列表述正确的是()。
关于在调用模板函数时实参的使用,下列表述中正确的是
下面有关重载函数的描述中正确的是
随机试题
与痰饮形成关系不密切的脏腑是( )。
患者反复感染,出血2个月。检查:全血细胞减少,肝、脾、淋巴结肿大,骨髓象及淋巴结活检均发现异常组织细胞及多核巨组织细胞。其诊断是
根据国家赔偿法,单独提出赔偿请求的情况主要有哪些?( )
下列关于法律制定的说法,不正确的为哪一个选项?()
刘某缺席会计人员继续教育培训的行为违背了提高技能的会计人员职业道德规范。提高技能是指会计人员通过学习、培训等手段提高职业技能已达到足够的专业胜任能力的活动。
增值税采用间接的计算方法,以商品货物的( )为计税依据。
音乐童话《龟兔赛跑》创作于20世纪60年代,它采用管弦乐的形式,加上简练的解说表现童话故事,深受孩子们的喜爱,其作者是史真荣。()
淬火效应原意为金属工件加热到一定温度后,浸入冷却剂(油、水等)中,经过冷却处理,工件的性能更好、更稳定。引申到教育学中,对长期受表扬头脑有些发热的学生,不妨设置一点小小的障碍,施以“挫折教育”,几经锻炼,其心理会更趋成熟,心理承受能力会更强;对于麻烦事或者
Theevolutioninpublicpolicyconcerningthemanufacture,saleandpossessionofsemiautomaticassaultweaponslikeAK-47s,AR-
YouwillhearaninterviewaboutGalapagosAdventureTourinEcuador.Asyoulisten,youmustanswerQuestions21to30bywriti
最新回复
(
0
)