c++试卷试题和答案_第1页
c++试卷试题和答案_第2页
c++试卷试题和答案_第3页
c++试卷试题和答案_第4页
c++试卷试题和答案_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、一、填空 共10题 (共计20分)第1题 (2.0分)若有语句组 char a;int b;float c;double d;则表达式:a*b+d+c运算结果的数据类型为 【1】 . 答案: 1). double第2题 (2.0分)若有语句:int x=0,y=1,z=2;z=+x|+y;执行以上语句后,变量x、y和z的值分别为 【1】 .答案: 1). x=1,y=1,z=1第3题 (2.0分)执行下列循环后,a= 【1】 ;b= 【2】 。 int a=1,b=2; while(a<4) a+; a+=+b; 答案: 1). 5 2). 3第4题 (2.0分)设有语句组 int j=

2、0,i=0,k=0;if(+i>0&&-j<0) k+;则i= 【1】 ;j= 【2】 ;k= 【3】 。答案: 1). 1 2). -1 3). 1第5题 (2.0分)以下语句组 for(int i=0,x=0;i<=5;i+)if(i%4) x+;break;else continue; x-; cout<<x;x的值是 【1】答案: 1). 1第6题 (2.0分)若自定义函数要求返回一个值,则应在该函数体中有一条 【1】 语句;若自定义函数要求不返回值,则应在该函数定义时加一个类型符 【2】 .答案: 1). return 2). void第

3、7题 (2.0分)以下程序输出的第一行是 【1】 ,第三行的结果是 【2】 . #include<iostrem.h> void fn(int &x) static int y=10; x+=y;y+=x; cout<<x<<","<<y<<endl; void main(void) int y=1; fn(y); fn(y); fn(y); 答案: 1). 11,21 2). 85,138第8题 (2.0分)有如下程序 # include <iostream.h>void main(void)

4、 int a33=11,12,13,14,15,16,i,j,s=0; for(i=1;i<3;i+) for(j=0;j<=i;j+) s+=aij; cout<<s; 该程序输出的结果是 【1】 . 答案: 1). 58第9题 (2.0分)下列程序的运行结果是 【1】 . # include <iostream.h>void main(void)int i=5;char a7='a','b','c','d','i','0' do ai=ai-1; while(

5、-i>0); cout<<a;答案: 1). aabcdi第10题 (2.0分)下列函数的功能是计算数组中下标为偶数的元素之和.请完善程序. # include <iostream.h>f(int a,int n) int s=0; for(int j=0;j<n; 【1】 , 【2】 ); return s; void main (void) int j,i=5; int a=1,2,3,6,4,5; cout<<f(a,6);答案: 1). s+=aj 2). j+=2二、单项选择 共30题 (共计30分)第1题 (1.0分)在以下关于C+语

6、言的注释的叙述中,不正确的是_。A:在C+程序中,注释可用"/*""*/"形式表示,也可用"/"形式表示B:C+编译器在编译一个程序时,将跳过注释,不对其进行处理C:C+编译器在编译一个程序时,可发现注释中的单词拼写错误D:程序中注释的多少不会影响所生成的可执行文件的长度答案:C第2题 (1.0分)在以下叙述中,不正确的是_。A:C+语言中,仅在处理字符与字符串时才区分字母的大小写B:C+语言没有输入/输出语句,输入/输出是通过输入/输出库函数实现的C:C+语言是C语言的一个超集D:一个C+程序总是从main()函数开始执行,而不管该

7、函数在整个程序中的具体位置答案:A第3题 (1.0分)C+语言对C语言进行了很多改进,C+语言相对于C语言的最根本的变化是_。A:增加了一些新的运算符B:允许函数重载,并允许设置缺省参数C:规定函数说明符必须用原型D:引进了类和对象的概念答案:D第4题 (1.0分)以下描述正确的是_。A:在C+程序中,有且只能有一个 Main函数B:C+程序的每行中只能写一条语句C:C+中没有输入/输出语句D:C+中没有输入/输出函数答案:C第5题 (1.0分)以下符号中不能作为自定义标识符的是_。A:scanfB:voidC:StructD:_int答案:B第6题 (1.0分)若有以下语句,则输出结果为_。

8、int a=2,b=1;cout<<a>b"a大于b":"a小于b"<<end1; /AA:a大于bB:a小于bC:1D:A行有错答案:D第7题 (1.0分)下列定义变量和常用语句中,语法正确的是_.A:float i,j,int k;B:const int i;C:int const k=1;D:#define PI=3.14159答案:C第8题 (1.0分)在数学式子(6ab)/(7xy)中,变量x和y为float数据类型,而变量a和b为int数据类型,在C+程序中该数学式对应的正确表达式是_。A:6/7*a*b/x/y

9、B:6/x*a*b/7/yC:6*a*b/7/x/yD:6*a*b/7*x*y答案:B第9题 (1.0分)设有说明语句"int a=15,b=17,c;",执行表达式"c=a|(b+=b)"后,则a,b,c的值分别是_。A:15 17 1B:1 34 35C:15 34 1D:15 17 15答案:A第10题 (1.0分)若a1、a2、a3和a4均为整型变量,则以下选项中符合C+语法规则的表达式是_。A:a1=25%3.3B:a2=a1+a3=3*5C:a3=078D:a4=0xa2答案:D第11题 (1.0分)在数学式子3xy/5ab,变量x和y的取值

10、为整数,而变量a和b的取值为实数,在C+程序中对应的正确表达式是_。A:3/5*x*y/a/bB:3*x*y/5/a/bC:3*x*y/5*a*bD:3/a/b/5*x*y答案:D第12题 (1.0分)设有下列语句: int j=17,k; cin>>hex>>j; cin>>k; cout<<"k="<<k; 若输入10 11<CR>,则运行结果值为:_。A:0B:11C:17D:16答案:C第13题 (1.0分)下列叙述正确的是_。A:<<是输出流B:cout是输出流C:<<

11、不是运算符D:cout是输出语句答案:B第14题 (1.0分)为了避免嵌套的if语句的二义性,C+语言规定else与if配对关系为_.A:缩排位置相同的ifB:在其之前未配对的ifC:在其之前未配对的最近的ifD:同一行上的if答案:C第15题 (1.0分)设有下列语句组 int a=0; if(2*2=5<2*(a=4) a=1; else a=2; a的值为_.A:0B:1C:2D:4答案:C第16题 (1.0分)有以下语句组 int a=3,b=4,c=5; if(a<b) if(b<c) +a; else +b; +c;则a、b、c的值分别为_。A:4、5、6B:4、

12、4、6C:4、5、5D:4、4、5答案:B第17题 (1.0分)以下程序段 if(x-<10)cout<<x+; cout<<-x; 若x=10,则输出结果是_。A:8B:9C:10D:11答案:A第18题 (1.0分)关于break语句,下列描述正确的是_.A:break语句可以出现在程序的任意位置B:break语句只能出现在开关语句中C:break语句只能出现在循环语句中D:break语句可以出现在循环语句或开关语句中答案:D第19题 (1.0分)下列叙述正确的是_.A:一个include可以用于包含一个或多个文件.B:编译预处理命令必须以#开始.C:使用in

13、clude包含的文件一定要以.h为后缀.D:程序执行时,宏展开只作替换,而不含计算过程.答案:B第20题 (1.0分)下列编译预处理指令没有语法错误的是_.A:#define N 3=B:#include "iostream.h"C:#define PI=3.14159D:include "iostream.h"答案:A第21题 (1.0分)下列编译预处理命令正确的是_.A:#define MUL(int a,int b) a*bB:#include "iostream.h"C:#define MUL(int a) a*bD:#inc

14、lude "iostream.h","math.h"答案:B第22题 (1.0分)以下程序执行后输出结果是_. #include <iostream.h> #define T(x,y) (x)<(y)(x):(y) void main() int i,j,k; i=10;j=15;k=10*T(i,j); cout<<k<<endl;A:15B:100C:10D:150答案:A第23题 (1.0分)下列程序运行的结果是_. fun1(int a,int b) return fun2(a+,-b); fun2(in

15、t a,int b) return a/b; void main(void) int x=5,y=6; cout<<fun1(x,y);A:1B:1.6C:2D:语法错答案:D第24题 (1.0分)若定义函数: int f(int x)x+;return x; 执行以下语句: int a=5;f(a)+f(a); 则a的值是_.A:5B:6C:7D:8答案:A第25题 (1.0分)若有定义int a5=1,3,5;,则数组元素a3的值是_.A:0B:3C:1D:5答案:A第26题 (1.0分)设有定义语句int a24;则以下叙述不正确的是_.A:a数组可以看成是由a0、a1两个元

16、素组成的一维数组B:a0代表一个地址常量C:元素a0是由4个整型元素组成的一维数组D:可用a0=5;的形式给数组元素赋值答案:D第27题 (1.0分)下列程序的运行结果是_. main() char s14="hello" cout<<strlen(s1); A:4B:5C:6D:有语法错答案:D第28题 (1.0分)下列叙述正确的是_. char sss2="wa","ha","wb","hb","wb","hb" /A char s33=&

17、#39;a','x','y' /BA:A行语句有错误B:B行语句有错误C:A行和B行语句都有错误D:A行和B行语句都没有错误答案:A第29题 (1.0分)下列程序的运行结果是_. char s1="hello" char s2='h','e','l','l','o'cout<<strcmp(s1,s2);A:0B:正数C:负数D:无法比较答案:C第30题 (1.0分)下面程序段是输出两个字符串中对应位置相等的字符.标号为1处应选择_. #inc

18、lude <iostream.h> #include <string.h> void main() char x="programming",char y="fortran"int i=0; while(xi!='0'&&yi!='0') if(xi=yi)cout<<_(1)_; else i+;A:xi+B:y+iC:xiD:yi答案:A三、程序填空 共2题 (共计10分)第1题 (5.0分)/*-【程序填空】-功能:求FIBONACCI数列的前N项,公式如图。-*/

19、#include <iostream.h>void main()int n,l1,l2,l3,i;cin>>n;/*SPACE*/l1=【】;l2=1;cout<<l1<<endl<<l2<<endl;/*SPACE*/for(i=3;【】)/*SPACE*/l3=【】;cout<<l3<<endl;l1=l2;/*SPACE*/【】;答案: 1). 0 2). i<=n;i+ 或 i<n+1;i+ 3). l1+l2 或 l2+l1 4). l2=l3第2题 (5.0分)/*-【程序填

20、空】-功能:以下程序的功能:计算并输出high以内最大的10个素数之和, high由主函数传给fun函数,若high的值为100,则函数的值为732。-*/#include <iostream.h>#include <math.h>int fun( int high ) int sum = 0, n=0, j, yes;/*SPACE*/ while (high >= 2) && (【】) yes = 1; for (j=2; j<=high/2; j+ )/*SPACE*/ if (【】)/*SPACE*/ yes=0; 【】; if (y

21、es) sum +=high; n+; high-; /*SPACE*/【】;void main ( ) cout<<fun(100);答案: 1). n<10 或 10>n 或 n<=9 或 9>=n 2). high%j=0 3). break 4). return sum 或 return (sum)四、程序改错 共2题 (共计10分)第1题 (5.0分)/*-【程序改错】-题目:计算分段函数的值 0 (x=0) y = 2x+20 (x>0) 3x (x<0)-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#include

22、<iostream.h>void main()float x,y;cin>>x;/*FOUND*/if(x=0)y=0;/*FOUND*/elseif (x<0)/*FOUND*/y=2x+20;else/*FOUND*/y=3x;cout<<x<<y;答案: 1). if(x=0) 2). else if (x>0) 3). y=2*x+20; 4). y=3*x;第2题 (5.0分)/*-【程序改错】-题目:用”筛选法”判断并输出1-100之间的素数.-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#include <iostream.h>void main()int a101,i,j;for(i=1;i<=100;i+)ai=1;for(i=2;i<=

温馨提示

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

评论

0/150

提交评论