首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str,char c,char*str2)的功能是: 如果str中包含字符“!”,则替换成…a;
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str,char c,char*str2)的功能是: 如果str中包含字符“!”,则替换成…a;
admin
2015-05-30
32
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str,char c,char*str2)的功能是:
如果str中包含字符“!”,则替换成…a;
如果str中包含字符“&”,则替换成…b;.
如果str中包含字符“*”,则替换成str2。
并用函数返回目标转换后的指针。
注意:只能补充函数convert(char*des,char*str.1 char*str2)。
1 #include
2 #include
3 #define MAXLEN 1024
4 void convert(char*des , char*str,char*str2)
5 {
6
7 }
8 void main()
9 {
10 char dest[MAXLEN];
11 char*str="!&cefghi*!&";
12 char*str2="Jklm";
13 convert(dest,str,str2);
14 cout<
15 return;
16 }
选项
答案
1 des[0]=0 ; 2 char temp[2]={0,0); 3 for(int i=0 ; str[i]!=NULL; i++) 4 { 5 if(Str[i]==’!’) 6 { 7 temp[0]=’a’; //替换成’a’ 8 strcat(des,temp); 9 } 10 else if(str[i]==’&’) 11 { 12 temp[0]=’b’; 13 strcat(des,temp); //替换成-b- 14 } 15 else if(str[i]==’*’) 16 { 17 Strcat(des,str2); //替换成str2 18 } 19 else 20 { 21 temp[0]=str[i]; 22 strcat(des,temp); //其他情况则添加在后面 23 } 24 }
解析
函数convert(char*des,char*str,char c,char*str2)的功能是将str中包含的特定字符替换成其他字符,因此可利用循环搜索str字符串,找到特定字符后进行替换。
[解题思路]
(1)由审题分析可知,利用循环中不断检索str字符串每一个字符,循环变量i从0开始,直到到了str字符结束,即srt
=NULL为循环判断结束条件。
(2)在循环体内,用ifelse语句判断是不是“!”、“&”或“*”这些特定的字符,如果是这些特定的字符则进行相应的替换,如果不是则将该字符直接加在des后面。
(3)字符串的连接可以使用字符串连接函数strcat(),将新字符连接在des后面,即strcat(des,temp)。
转载请注明原文地址:https://kaotiyun.com/show/2JNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是______。#include<iostream.h>Intf(){staticinti=0;inta=1;a+=;i++;ret
下列关于数组的描述正确的是()。
使用fstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为()。
下面不是派生类对基类的继承方式的是()。
执行语句序列ofstreamoutfile("data.dat");if(...)cout<<"ok";elsecout<<"fail";后,如果文件打开成功,显示“ok”,否则显示“fail”。由此可知,上面if语句的“...
如果表达式++i*k中的“++”和“*”都是重载的非静态成员运算符,则采用运算符函数调用格式,该表达式还可表示为=______。
使用白盒测试方法时,确定测试数据应根据______和指定的覆盖标准。
以下函数模板max的功能是:返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmax(Ta[],intn){Tm=a[0];for(inti=1;i<n;i++)
在进行任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为【】的。
随机试题
从性质上讲,资产的评估价值是注册资产评估师对被评估资产在评估基准日的()估计值。
患者女,31岁。1年前因宫外孕出血输血1200mL,半年来出现发热,乏力纳差,多次检查ALT>200U/L,抗HCV阳性,HAVIgg抗体(﹢),抗HBsAg(﹢)。该患者最可能的诊断是
符合结核性脑膜炎的实验室检查结果为( )。
水准测量中设M点为后视点,N为前视点,M点的高程是59.053m,当后视读数为1.026m,前视读数为1.156m,则Ⅳ点的高程是()。[2010年真题]
项目决策与评价阶段的管线综合布置方案的设计内容深度应该满足总平面方案设计和()的要求。
建设工程设计投标的评标标准大致可以归纳为()等方面。
男子110米栏的栏高、栏间距、起跑线至第一栏、最后一栏至终点的距离分别是()。
简述夏朝法律关于“昏、墨、贼”三种犯罪的规定。
宇宙中穿过地球运行轨道的大行星有1000多颗。虽然一颗行星与地球碰撞的概率极小,但人类仍必须尽其所能来减少这种概率,因为如果这种碰撞一旦发生,对地球将是灾难性的。避免这种灾难的最好方法是使行星的运行轨道发生一定的偏斜。而要使行星的运行轨道发生偏斜,唯一的
Inwhatwaydidthescientistssupposealienlifemightbethriving?
最新回复
(
0
)