首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到des
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到des
admin
2020-05-14
38
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(cha*des,char*str)实现的功能是:
(1)如果字符串最后面有空格,则全部删除;
(2)转换后的数据放到des,并且指针作为返回值返回。
注意:不能修改程序的其他部分,只能补充convert()函数。
1 #include
2 #include
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="abe def ";
12 cout << string <<"<一一" <
13 cout<
14 return;
15. }
选项
答案
1 int length=0; 2 int i ; 3 for(length=0 ; str[lengch] !=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[1ength]=NULL; //最后一个字符为NULL 15 return des ;
解析
函数convert(cha*des,char*str)实现的功能是将字符串最后面有空格删除,并将转换后的数据放到des,返回指针,可以将字符串最后空格前的所有所有字符拷贝到des中,关键是确定下标从那开始到最后都是空格。
[解题思路]
(1)利用循环将字符串str的长度求出,然后从字符串的尾部开始检索,用循环从字符串的最后一个字符往前面逐个检查,如果该字符不是空格则退出循环,这个时候就找到了最后一个非空格字符所在的下标位置,然后从下标0开始到该位置,逐个将str里面字符拷贝到des中。
(2)程序当中使用了3次循环:计算长度、寻找最后一个非空格字符和拷贝三个过程。
转载请注明原文地址:https://kaotiyun.com/show/lg8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;intmain(){intf,f1=0,f2=1;for(inti=3;i<=6;i++){f=f1+
下列程序的输出结果是非曲直【 】。#include<iostream,h>classbase{intx,y;public:base(inti,intj){x=i;y=j;}virtualintadd(){
类模板的使用实际上是将类模板实例化成一个具体的【】。
以下程序的输出结果是______。#defineNULL0#include<iostream.h>voidmain(){inta[]={1,2,3,4,5,6,7,8,9,10};int*p=
以下程序的输出的结果是()。#includeintx=3:voidmain(){voidfun();inti;for(i=1;i
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10);则下列叙述中错误的是
有如下程序:#include<iostream>usingnamespacestd;classSample{friendlongfun(Samples);public:Sample(
有以下程序:#included<iostream>usingnamespacestd;classBase{public:Base(){x=0;}
线性表进行二分法检索,其前提条件是()。
设a=1;b=2;,则(a++)+b和a+++b这两个表达式的值分别为()。
随机试题
A.抗利尿激素B.降钙素C.胰高血糖素D.胰岛素E.催产素下丘脑视上核神经细胞主要合成
队列研究最大的优点是
18岁青年女性,运动时突发左胸痛,伴气促,可能为
甲为乙企业设立的分支机构,甲在经营活动过程中与丙企业签订货物运输合同,后甲分支机构在运输货物的过程中因重大过失造成大量货物毁损,给丙企业带来巨大经济损失,现丙企业欲向法院提起诉讼要求获得相应赔偿.则关于本案的被告,下列说法中正确的是:()
2015年3月15日,第十二届全国人民代表大会第三次会议审议通过了《全国人民代表大会关于修改(中华人民共和国立法法)的决定》。其中,对授权立法进行了更为详细的规定。按照新修改的《立法法》,下列选项中关于授权立法的说法中,哪些是正确的?()
挖坑灌砂法测定压实度试验方法不适用于()。
已知,则复数z为______.
微分方程y′-xe-y+=0的通解为_______。
某数据库中有供应商关系S和零件关系P,其中;供应商关系模式S(Sno,Sname,Szip,City)中的属性分别表示:供应商代码、供应商名、邮编、供应商所在城市;零件关系模式P(Pno,Pname,Color,Weight,City)中的属性分别表示:零
Everyoneofusconsidersthecombinationoftheorywithpracticeas______vitalimportance.
最新回复
(
0
)