首页 > 全部 > 二级C++ > 国家二级C++机试(操作题)模拟试卷557

国家二级C++机试(操作题)模拟试卷557

本单篇文档共5693字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 5075人下载
价格: 2.00 原价:¥7.00
收藏

国家二级C++机试(操作题)模拟试卷557

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi1.cpp。本程序要求输入一字符串,然后将其中的小写字母改变成大写字母,字符可能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到界面。

注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。

1 #include<iostream.h>

2 void main()

3 {

4 int i=0;

5 char str[120];

6 cout<<’’Enter a string endwith’?’.’’<<end1;

7 //********error********

8 cin.getline(str,120);

9 //********error********

10 while(str)

11 {

12 //********error********

13 if(str[i]>=’a’)

14 str[i] =str[i] -’a’+’A’;

15 i++;

16 }

17 cout<<str<<end1;

18 return;

19 }

(1)cin.getline(str,120,’?’);

(2)while(str[i])

(3)if(str[i]>=’a’&&str[i]<=’z’)

解析:同一英文字母的大写和小写形式的ASCII码值相差32,因此,要将小写字母转换为大写字母,只要将其对应的ASCII码值减去32即可,程序中给出的语句中,减去字符’a’的ASCII码再加上字符’A’的ASCII码正好是减去32。

(1)题目中要求以输入字符“?”为结束,用于字符输入的流成员函数getline函数读入一行字符,格式cin.getline(字符数组,字符个数,终止标志字符),所以第1个标识下为“cin.getline(str,120,’?’):”。(2)第2个标识下的“while(str)”语句应该是判断字符串str中的每一个字符是否为尾符,若不是尾符在循环中判断每一个字符是否为小写,若为小写,转换。所以应该修改为“while fstr[i])”。

(3)第3个标识下的“if(str[i]>=’a’)”语句是判断字符str[i]是否为小写字符,而现有的语句只是判断字符是否大于’a’,但是小写字符应该是’a’到’z’,所以修改为“if(str[i]>=’a’&& str[i]<=’z’)”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。完成函数fun(chaur*str,char*s)空出部分。函数fun(char*str,char*s)的功能是:将在字符串str中下标为偶数位置上的字符,紧随其后重复出现一次,放在一个新串s中,s中字符按原字符串中字符的顺序排列。(注意0为偶数)

例如:当str中的字符串为:’’abcdef’’时,s中的字符串应为:’’aaccee’’。

注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。

1 #include<iostream.h>

2 void fun(char*str,char*s)

3 {

4

5 }

6 void main()

7 {

8 char str[100],s[100];

9 cout<<’’P1ease enter string string:’’<<end1;

10 cin.getline(str,100);

11 fun(str,s);

12 cout<<’’The reSUlt is:’’<<s<<end1;

13 return;

14 }

1 int i;

2 for(i=0;str[i]!=0;i++) //循环判断每一个字符

3 {

4 if(i%2==0) //判断字符串中下标为偶数位置

5 {

6 s[i]=str[i];

7 s[i+1]=str[i];

8 s[i+2]=’\0’;//新串添加尾符

9 }

10 }

解析:(1)该程序功能是找出在字符串中下标为偶数位置上的字符,紧随其后重复出现一次,放在一个新串。它的解题思路,解题过程利用if条件判断表达式选择符合条件的字符,然后将符合条件的字符放入指定的字符串。

(2)从己给部分源程序的main主函数开始入手,核心函数void fun(char*str,char*s)中的str参数为输入的字符串,其中s为新串。

(3)判断一个字符串中的某一字符下标i是否为偶数,可用“i%2==0”来判断。

(4)对串str中各个字符串逐个进行考查,满足条件的字符就顺序放在新串s中,否则就不存放。

(5)所有字符处理完后,记得在新串s的末尾加上结束符“’\0’”。

综合应用题

3.使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。

(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释//********1********后添加适当的语句。

(2)完成构造函数,分别给year、month、day赋值,请在注释//********2********后添加适当的语句。

(3)完成重载符号“+=”的定义,请在注释//********3********后添加适当的语句。

(4)完成print()打印函数,如2008年8月8日到屏幕和文件modi3.txt格式相同,请在注释//********4********后添加适当的语句。

注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。

1 #include<iostream.h>

2 #include<fstream>

3 #include<iomanip>

4 #include<cmath>

5 using namespace std;

6 void WriteFile(int c)

7 {

8 ofstream out1;

9 out1.open(’’modi3.txt’’,ios_base::app);

10 out1<<c<< ’ ’;

11 out1.close();

12 }

13 void WriteFile(char* str)

14 {

15 ofstream out1;

16 out1.open(’’modi3.txt’’,ios_base::app);

17 out1<<str;

18 out1.close();本文档预览:3600字符,共5693字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(操作题)模拟试卷557

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号