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

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

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

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

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。

本程序完成以下功能:

(1)获得输入的两个数字x1,x2(例如x1=4,x2=2);

(2)输出两个中较小的一个(例如输出2);

(3)计算x1/x2如果x2等于0,返回-1(输出结果2);

(4)输出x1+x2的结果(输出结果6);

(5)输出x1+1的结果(输出结果5);

(6)输出x2-1的结果(输出结果1)。

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

1 #include<iostream.h>

2 void main()

3 {

4 int x1;

5 int x2;

6 int x3;

7 cout<<’’please input two number:’’<<end1;

8 cin>>x1>>x2;

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

10 x3=(x1>x2)?x1:x2;

11 cout<<’’Min number is :’’<<x3<<end1;

12 //计算x1/x2如果x2等于0,返回-1

13 //********error********

14 x3=(x2)?x1\x2:-1;

15 cout<<’’x1/x2= ’’<<x3<<end1;

16 //********error********

17 x3= (–x1) + (x2++);

18 cout<<’’x1+x2= ’’<<x3<<end1;

19 cout<<’’x1+1= ’’<<x1<<end1;

20 cout<<’’x2-1= ’’<<x2<<end1;

21 return;

22 }

(1)x3=(x1<x2)?x1:x2;

(2)x3=(x2)?x1/x2:-1;

(3)x3=(x1++)+(x2–);

解析:本题首先求输出两个数字中的最小值,然后计算两个数相除的值,然后求得第一个数与第二个数的和,最后输出“x1+1”和“x2-1”的值。解题思路主要是要从main()主函数入手,依次完成题干中要求的各个要求。

(1)第1个标识下“x3=(x1>x2)?x1:x2;”语句是判断x1与x2其中哪个相对较小,并将其赋值给x3。条件运算符的格式:表达式1?表达式2:表达式3。执行顺序是先求解表达式1,若非则求解表达式3,此时表达式3的值就作为整个条件表达式值。所以求x1和x2中较小的一个,如果x1<x2为真,那么x1的值赋给x3,否则x2的值赋给x3,即第1个标识下为“x3=(x1<x2)?x1:x2;”。

(2)同理,第2个标识下计算x1/x2如果x2等于0,返回-1。即“x3=(x2)?x1/x2:-1;”。

(3)题干中求x1+1,而-x1是x1-1,所以改为x1++。同理X2++改为x2-。即“x3=(x1++)+(x2-);”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int n),求出n×n矩阵的对角线数字的平方和。如果n为奇数,则对角线交叉部位数字只参与一次计算。

注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

1 #include<iostream.h>

2 #define MAX N 10

3 int XX[MAX N][MAX N];

4 int fun(int n)

5 {

6

7 }

8 void main()

9 {

10 int n;

11 do

12 {

13 cout<<’’please input N(1<=N<10):’’<<end1;

14 cin>>n;

15 if(n<10 && n>=1)

16 {

17 break;

18 }

19 } while(1);

20 for(int i=0;i<n;i++)

21 {

22 for(int j=0;j<n;j++)

23 {

24 cout<<’’please input data:’’<<end1;

25 cin>>XX[i][j];

26 }

27 }

28 cout<<fun(n)<<end1;

29 return;

30 }

1 int data=0;//初始化求平方和变量

3 for(int i=0;i<n;i++)

3 {

4 data+=XX[i][i]*XX[i][i];//求正对角线平方和

5 if(i!=n-i-1)

6 data+=XX[i][n-i-1]*XX[i][n-i-1];//求逆对角线平方和

7 }

8 return data;

解析:本题函数中的功能是输出N行N列正方阵,然后求两条对角线上各元素之平方和。其中,假设矩阵行、列分别为i、i,那么对角线上的元素特点是主对角线上i=j,以及逆对角线j=n-i-1。

(1)首先初始化求平方和变量,设置求平方和的变量为0。

(2)然后利用for循环求得矩阵正对角线平方和。

(3)最后求得逆对角线平方和,返回平方和变量。

综合应用题

3.使用VC6打开源程序文件modi3.cpp。此程序的功能是将out1.txt文件中的内容输出到屏幕与文件中。输出如下:

李一 1.78m 21

王一 1.65m 23

out2.txt文件的内容如下:

李一 1.78m 21

王一 1.65m 23

其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。

(1)以输入方式打开文件out1.txt,请在注释//********1********后添加适当的语句。

(2)以输出方式打开文件out/txt,请在注释//********2********后添加适当的语句。

(3)从文件中获得一个字符,判断是否结束,如果结束则退出输出。请在注释//********3********后添加适当的语句。

(4)把获得的字符输出到文件中,请在注释//********4********后添加适当的语句。

注意:仅在函数指

本文档预览:3600字符,共4966字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号