首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到des
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到des
admin
2019-05-29
65
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是:
(1)如果字符串最后面有空格,则全部删除;
(2)转换后的数据放到des,并且指针作为返回值返回。
注意:不能修改程序的其他部分,只能补充convert()函数。
1 #include<iostream.h>
2 #include<ctype.h>
3 #define MAXLEN 1024
4 char* convert(char*des,char*str)
5 {
6
7 }
8 void main()
9 {
10 char dest[MAXLEN];
11 char*string=’’abc def ’’;
12 cout<< string<<’’<--’’<<end1;
13 cout<<convert(dest,string)<<’’<--’’<<end1;
14 return;
15 }
选项
答案
1 int length=0; 2 int i; 3 for(1ength=0;str[1ength] !=NULL;length++); //求数组长度 4 length--;//下标从0~len-1,下标减1表示最后一个字符的下标值 5 for(i=length;i>=0;i--) 6 { 7 if(str[i]!=’’) //判断结尾是否有空格,从后往前判断直到不是不是空格了跳出循环 8 break; 9 } 10 for(length=0;length<=i;length++) 11 { 12 des[length]=str[1ength];//从前面开始,逐个将str中的字符拷贝到des数组中,不含最后面的空格 13 } 14 des[length]=NULL;//最后一个字符为NULL 15 return des;
解析
函数convert(cha*des,char*str)实现的功能是将字符串最后面有空格删除,并将转换后的数据放到des,返回指针,可以将字符串最后空格前的所有字符拷贝到des中,关键是确定下标从那开始到最后都是空格。
(1)利用循环将字符串str的长度求出,然后从字符串的尾部开始检索,用循环从字符串的最后一个字符往前面逐个检查,如果该字符不是空格则退出循环,这个时候就找到了最后一个非空格字符所在的下标位置,然后从下标0开始到该位置,逐个将str里面字符拷贝到des中。
(2)程序当中使用了3次循环:计算长度、寻找最后一个非空格字符和拷贝三个过程。
转载请注明原文地址:https://www.kaotiyun.com/show/jB8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已有函数fun(a,b),为了使函数指针变量p指向函数fun,则使用的赋值语句是_________
A、 B、 C、 D、 C通过调用友元函数,实现求解n!的算法。sum=5!+4!+3!+2!。
A、 B、 C、 D、 B此题考查的是虚函数的概念。在成员函数的声明前面加上virtual关键字,即可把函数声明为虚函数。虚函数可以是另一个函数的友元函数而不能是静态成员函数。
A、 B、 C、 D、 C派生类的构造函数定义的一般格式为:派生类名(参数总表):基类名(参数表){派生类新增数据成员的初始化语句}在生成对象b时,就自动给基类构造函数传递实参1
A、 B、 C、 D、 Atest的构造函数重载,testA[3]调用test(intA)函数,然后删除时调用析构函数,故输出选项A。
A、 B、 C、 D、 C所谓的算法的时间复杂度,是指执行算法所需要的工作量,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
有如下程序:#include<iostream>usingnamespacestd;classtest{private:inta;public:test(){cout<<"c
A、 B、 C、 D、 A要对线性表进行二分法查找,对线性表有两个要求:第一,要求线性表是按顺序方式存储的;第二,要求线性表中的元素是按照从小到大的顺序排好序。
下列选项中不属于软件生命周期开发阶段任务的是()。
随机试题
建构主义学习理论强调()。
从技术创新风险类型来看,一般分为技术风险和()
若f(x)的一个原函数是cosx,则∫fˊ(x)dx=_______.
A.肩胛间区、胸骨旁、上腹部可闻及血管杂音B.大量蛋白尿C.尿中白细胞、脓细胞较多,且有尿频、尿急史D.满月脸,多毛E.发作时血压骤升伴剧烈头痛,心悸,不发作时血压可正常患者,男性.30岁。发作性血压增高,发作时血压达200/1
维生素D中毒可致
企业进行会计数字比较的方式包括()。
李某是当地公办小学的一名教师,为维护自身合法权益,他向该地教育局提出了以下要求,按照现行法律法规,属于合法要求的是()
古希腊的泰勒斯提出了“水是万物的本原”的论点,春秋时代的《管子》书中的《水地》篇中也表述了“水是万物的根源”的学说。上述观点()。
Smallpoxwasthefirstwidespreaddiseasetobeeliminatedbyhumanintervention.Ahighlycontagiousviraldisease,itwasende
EdwinArlingtonRobinsonisoneofthegreatest______in1920sinAmerica.
最新回复
(
0
)