c++大一模拟试题(带答案)_第1页
c++大一模拟试题(带答案)_第2页
c++大一模拟试题(带答案)_第3页
c++大一模拟试题(带答案)_第4页
c++大一模拟试题(带答案)_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、模拟试卷( A 卷)一、单项选择题 (在每小题的四个备选答案中,选出一个正确答案,并将正确答 案的序号填在括号内。每小题 2分,共 15小题, 30分 )1. 下列字符串中不能作为C+标识符使用的是()。A、 WHILEB 、userC、 _lvarD、9stars2. C+语言规定:在一个源程序中,main函数的位置()。A、必须在程序的最开始B、必须在系统调用的库函数的后面C、可以任意D、必须在程序的最后3. 假定 int 类型变量占用两个字节,其有定义 int x10=0,2,4; ,则数组 x 在内 存中所占字节数是 ()。A、 3B、 6C、 10D、 204. 判断字符型变量 ch

2、 是否为大写英文字母,应使用表达式()A、 ch=A & ch=ZB、 ch=ZC、 A=ch=A & ch=Z5. 已知下列语句中的x和y都是int型变量,其中错误的语句()A、 x=y+; B、 x=+y;C、 (x+y)+; D、+x=y;6. 有如下程序段:int i=1;while (1) i+;if(i = 10) break; if(i%2 = 0) cout *;执行这个程序段输出字符 *的个数是()。A、 10B、 3C、 4D、 5 7有如下程序#include using namespace std;int func (int a, int b)return (a+b);

3、 int main ()int x=2,y=5,z=8,r;r=func(func(x,y), z);cout n;switch(n) case 1:case 2: cout 1;case 3:case 4: cout 2; break;default: cout 3;时,若键盘输入 1,则屏幕显示()。A、 1 B、2 C、3D、129 若二维数组a有m列,则在aij之前的元素个数为()。A、j*m+iB、i*m+jC、i*m+j-1D、 i*m+j+110. 语句的int *p=&k定义于指针P,于这个语句等效的语句序列是()A、int *p; p=&k;B、int*p; p=k;C、in

4、t*p; *p=&k;D、int*p;*p=k;11. 已知: int m=10; 在下列定义引用的语句中,正确的是()。A、int &x=m;B、int y=&m;C、int &z;D、int &t=&m;12. 有如下程序段int i =0, j=1;intr=i ; / r =j; / int*p= i ; / *p= r ; / 其中会产生编译错误的语句是 ()。A、B、C、D、13.在函数中,可以用auto, extem, registe和static这四个关键字中的一个来说明 变量的存储类型,如果不说明存储类型,则默认的存储类型是()。A、 autoB 、 extem14.已知数组

5、an的定义如下:(C 、 register)。D 、 staticint arr5 = 1,2,3,4,5; 列语句中输出结果不是 2的是A、cout *arr+1 endl;B、cout *(arr+1)endl;cout arr1 endl;在类声明中,紧跟在“public:后声明的成员的访问权限是( 私有B、公有C、保护D、默认二、改错题 ( 每题有几处错误,在错误处画线,并写出正确语句。每找对 误,加 1 分,每修改正确 1 个错误,再加 1 分。共 3 小题,共 16 分)C、D、cout *arr endl;15.A、)。1 个错1. #include using namespac

6、e std; const float pi = 3.1416;const float r = 3.2;int main() float s1;r = 2.8;c1 = pi*r*r;s1 = 2*pi*r; coutc1s1endl;return 0;2. 下列程序功能是求x的y次方(缺省是x的2次方) #includeusing namespace std;double fun(double x,double y) int i;double s=1;for(i=0/ i=1;iy;i+)s=s*x;return s;int main() double x=2.5,y=3;coutpow(2.

7、5,2):fun(x ,2)endl; coutpow(2.5,3):fun(x,y)endl; return 0;3将一维数组按升序排列。#include using namespace std; void sort ( int *p, int n) int i,j,temp;for (i=0;in-1;i+)for (j= i+1;jn;j+)if (pipj) temp=pi;pi=pj;pj=temp; int main( void) int a16=1,3,2,5,4,6,*pi,i; pi=a1/pi=a10;sort (pi,6);for (i=0;i6;i+) couta1it

8、; coutendl;return 0;4 小题,三、程序理解分析题(分析下列程序代码,并写出程序的输出结果,共 每题 4 分,共 16 分)1. #includeusing namespace std;int main()int sum;for(int i=0; i6; i+=3)sum=i;for(int j = i; j6; j+)sum+=j;coutsumend1;return 0;2. #include using namespace std;int main()int i = 5;int &r = i; r = 7;cout i endl; return 0;3. #includ

9、eusing namespace std;int main()char a=abcdabcabfgacd;int i1=0,i2=0,i=0;while (ai!=0) if(ai=a)i1+;if(ai=b)i2+;i+;couti1=i1, i2=i2endl; return 0;4. #include using namespace std; int a=200; void s() static int a=20;a+;couta, ;int main() int i;for(i=1;i=2;i+) a+;couta, ;s(); return 0;四、程序填空题(在横线处填上一个语句,

10、使程序实现其相应的功能。每空 分,共 6 个空,总共 18 分)1、求三个数中的最大值和最小值。#include using namespace std;void maxmin(int a, int b, int c, int &m, int &n) int t;if(ab)t=a;a=b;b=t; if(ac)t=a;a=c;c=t; if(bc)t=b;b=c;c=t; m=a; /*第一空 */ n=c; /*第二空 */int main( ) int a,b,c,max,min; coutabc;maxmin(a,b,c, max,min );/*第三空 */cout a=a b=b

11、c=cendl;cout max=max, min=minendl; return 0;2. 以下程序的功能是输出二维数组中最大值所在行内最小元素的值。 #include using namespace std;int fun(int a45) int i, j, m=0,n=0,min;for (i=0; i4; i+ ) for(j=0;j5;j+) if(amnaij) _m=i_ /*第一空 */n=j;min=am0_ /* 第二空 */for(j=1;jamj)min=amj /*第三空 */return min;int main() int i,j,min;int a45=2,3

12、,6,4,1,25,54,23,28,26, 7,9,15,20,35,67,18,30,88,38;for(i=0;i4;i+) for(j=0;j5;j+)coutaij ;coutendl;min=fun(a);coutmin;return 0; 五、程序设计题(根据功能要求,编写程序,实现其功能,2题,每题 10分,共20分)1. 请编写一个函数long sum(int n),用递归函数完成运算:sum(n)=1*1+2*2+n*n ,递归表达式为 sum(n)=sum(n-1)+n2。请勿修改主函数main和其他函数中的任何内容,仅在函数sum的花括号中填 写若干语句。#includ

13、eusing namespace std;long sum(int n)int sum=0;while(n0)sum+=n*n;n-;return sum;int main() int n;cout输入 n:;cinn;coutvv结果为:sum(n)vendl;return 0;2. 请编写函数fun(),该函数的功能是判断字符串是否为回文,若是则函数 返回1,主函数中输出YES;否则返回0,主函数中输出NO。回文是指顺读和倒 读都一样的字符串。例如:字符串LEVEL是回文,而字符串123312就不是回文。请勿修改主函数main和其他函数中的任何内容,仅在函数fun的花括号中填 写若干语句。

14、#includeusing namespace std;#define N 80int fun(char*str)int main()char sN;coutEnter a string:endl;gets(s);coutnn;puts(s);if (fun(s) coutYESn;elsecoutNOn;return 0;模拟试卷(A卷)参考答案及评分标准一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在括号内。每小题2分,共15小题,30分)I. D 2. C 3. D 4. D 5. C 6. C 7、D 8. D 9. B 10. AII. A12、A

15、13. A 14. D 15. B二、改错题(每题有几处错误,在错误处画线,并写出正确语句。每找对 1个错误,加1分,每修改正确1个错误,再加1分。共3小题,共16分)1. 答案:#i nclude using n amespace std;const float pi = 3.1416;const float r = 3.2;int mai n() float s1,c1;r = 2.8;c1 = pi*r*r;s1 = 2*pi*r;coutc1s1e ndl;return 0;2. 答案:#in cludeusing n amespace std;double fun( double x

16、,double y) int i;double s=1;for(i=1;i=y;i+)s=s*x;return s;int main() double x=2.5,y=3;coutvpow(2.5,2):vvfu n(x,2)e ndl; coutvpow(2.5,3):vvfu n(x,y)using n amespace std;void sort ( int p, int n) int i,j,temp;for (i=0;i n-1;i+)for (j=i;j pj) temp=pi;pi=pj;pj=temp; int main( void) int a16=1,3,2,5,4,6,*

17、pi,i;pi=a1;sort (pi,6);for (i=0;i6;i+) couta1ivvt; coutvve ndl;return 0;三、程序理解分析题(分析下列程序代码,并在程序右侧写出程序的输出结果, 共 4 小题,每题 4 分,共 16 分)1. 运行时的输出结果是 152. 运行时的输出结果是 73. 运行时的输出结果是 i1=4, i2=34. 运行时的输出结果是 201, 21, 202, 22四、程序填空题(在横线处填上一个语句,使程序实现其相应的功能。每空 3分,共 6 个空,总共 18 分)1、m/* 第一空*/n/*第二空 */min/*第三空 */2.m=i;/*第一空 */min=am0;/*第二空 */min=amj;/* 第三空 */五、程序设计题(根据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论