C++考试笔试题库免费版Word格式.docx
《C++考试笔试题库免费版Word格式.docx》由会员分享,可在线阅读,更多相关《C++考试笔试题库免费版Word格式.docx(42页珍藏版)》请在冰豆网上搜索。
,程序执行后的输出结果是
A)anotherB)anotherC)anotherD)number
numbernumbernumbernumber
numberanothernumber
(3)有以下程序
{intx=0,y=5,z=3;
while(z-->
0&
++x<
5)y=y-1;
printf(“%d,%d,%d\n”,x,y,z);
程序执行后的输出结果是
A)3,2,0B)3,2,-1C)4,3,-1D)5,-2,-5
(4)有以下程序
{inti,s=0;
10;
i+=2)s+=i+1;
printf(“%d\n”,s);
A)自然数1~9的累加和B)自然数1~10的累加和
C)自然数1~9中的奇数之和D)自然数1~10中的偶数之和
(5)有以下程序
{inti,n=0;
for(i=2;
5;
{do
{if(i%3)continue;
n++;
}while(!
i);
n++;
printf(“n=%d\n”,n);
A)n=5B)n=2C)n=3D)n=4
(6)若程序中定义了以下函数
doublemyadd(doublea,doubleB)
{return(a+B);
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是
A)doublemyadd(doublea,B);
B)doublemyadd(double,double);
C)doublemyadd(doubleb,doubleA);
D)doublemyadd(doublex,doubley);
(7)有以下程序
charfun(charx,chary)
{if(x<
y)returnx;
returny;
{inta=’9’,b=’8’,c=’7’;
printf(“%c\n”,fun(fun(a,B),fun(b,C)));
程序的执行结果是
A)函数调用出错B)8C)9D)7
(8)设有定义:
intn=0,*p=&
n,**q=&
p;
则以下选项中,正确的赋值语句是
A)p=1;
B)*q=2;
C)q=p;
D)*p=5;
(9)有以下程序
voidf(intv,intw)
{intt;
t=v;
v=w;
w=t;
{intx=1,y=3,z=2;
if(x>
y)f(x,y);
elseif(y>
z)f(y,z);
elsef(x,z);
执行后输出结果是
A)1,2,3B)3,1,2C)1,3,2D)2,3,1
(10)有以下程序段
inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&
a[3],b;
b=p[5];
b中的值是
A)5B)6C)8D)9
(11)有以下程序
{chara[]=”abcdefg”,b[10]=”abcdefg”;
printf(“%d%d\n”,sizeof(A),sizeof(B));
A)77B)88C)810D)1010
(12)若以下选项中的变量已正确定义,则正确的赋值语句是
A)x1=26.8%3;
B)1+2=x2;
C)x3=0x12;
D)x4=1+2=3;
(13)在下列c语言中运算对象必须是整型的运算符是
A)%=B)/C)=D)*=
(14)若有以下程序段;
intc1=1,c2=2;
c3=1.0/c2*c1;
则执行后,c3中的
值是。
A)0B)0.5C)1D)2
(15)有以下定义
#include<
stdio.h>
chara[10],*b=a;
不能给数组a输入字符串的语句是
A)gets(A)B)gets(a[0])C)gets(&
a[0]);
D)gets(B);
(16)有以下程序
{char*p[10]={“abc”,”aabdfg”,”dcdbe”,”abbd”,”cd”};
printf(“%d\n”,strlen(p[4]));
A)2B)3C)4D)5
(17)有以下程序
inta=2;
intf(int*A)
{return(*A)++;
{ints=0;
{inta=5;
s+=f(&
A);
A)10B)9C)7D)8
(18)有以下程序
#definef(x)x*x
{inti;
i=f(4+4)/f(2+2);
printf(“%d\n”,i);
A)28B)22C)16D)4
(19)设有以下语句
typedefstructS
{intg;
charh;
}T;
则下面叙述中正确的是
A)可用S定义结构体变量B)可以用T定义结构体变量
C)S是struct类型的变量D)T是structS类型的变量
(20)x和y均为int型变量,则以下语句:
x+=y;
y=x-y;
x-=y;
的功能
是。
A)把x和y按从大到小排列B)把x和y按从小到大排列
C)无确定结果D)交换x和y中的值
三、填空题(每空4分,共40分)
(请将每一个空的正确答案写在答题卡【1】至【10】序号的横线上,答在试卷上不得分)
(1)在关系数据库中,把数据表示成二维表,每一个二维表称为【1】
。
(2)以下程序运行时若从键盘输入:
34
78
90<
输出结果是【2】
#include
<
main()
{
int
i=0,j=0,k=0;
scanf("
%d%*d%d"
&
i,&
j,&
printf("
%d%d%d\n"
i,j,k);
(3)以下程序运行后的输出结果是【3】
#define
S(x)
5*x*x+1
{
i=6,j=8;
printf("
%d\n"
S(i+j));
(4)以下程序运行后的输出结果是【4】
int
a=13,b=4,c=15,t=78;
if(b<
a&
a<
c)
t=a;
a=c;
c=t;
if(a<
c&
b<
t=b;
b=a;
a=t;
a,b,c);
(5)以下程序运行后的输出结果是【5】
a,b,c
a=20;
b=30;
c=(a%b<
1)||(a/b>
1);
%d%d%d\n"
(6)已知字符A的ACSII码值为65,以下语句的输出结果是【6】
charch=’B’;
printf(“%c%d\n”,ch,ch);
(7)有以下语句段
intn1=50,n2=60;
printf(“【7】”,n1.n2);
要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。
n1=10
n2=20
(8)有以下程序
{intt=1,i=5;
for(;
i>
=0;
i--)t*=i;
printf(“%d\n”,t);
执行后输出结果是【8】。
(9)有以下程序
{intn=0,m=10,x=12;
if(!
n)x-=1;
if(m)x-=2;
if(x)x-=3;
printf(“%d\n”,x);
执行后输出结果是【9】。
(10)有以下程序
{charch1,ch2;
intn1,n2;
ch1=getchar();
ch2=getchar();
n1=ch1-‘0’;
n2=n1*10+(ch2-‘0’);
printf(“%d\n”,n2);
程序运行时输入:
12<
,执行后输出结果是【10】。
四、编程题(每题10分,共20分)
1、编程计算S=10!
(10分)2、用选择排序法对n个整数排序(降序)
一、选择题,(每题2分,共40分)
(1)有以下程序
{intm=3,n=4,x;
x=-m++;
x=x+8/++n;
x);
程序运行后的输出结果是
A)3B)5C)-1D)-2
(2)有以下程序
{chara='
a'
b;
print("
%c,"
++a);
%c\n"
b=a++);
A)b,bB)b,cC)a,bD)a,c
(3)有以下程序
{intm=0256,n=256;
%o%o\n"
n,n);
A)02560400B)0256256C)256400D)400400
(4)有以下程序
{inta=666,b=888;
a,b);
A)错误信息B)666C)888D)666,888
(5)有以下程序
for(i=0;
switch(i)
case0:
%d"
i);
case2:
default:
A)022111B)021021C)000122D)012
(6)若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<
10的是
A)abs(x-y)<
10
B)x-y>
-10&
x-y<
10
C)(x-y)<
-10||!
(y-x)>
D)(x-y)*(x-y)<
100
(7)有以下程序
inta=3,b=4,c=5,d=2;
if(a>
b)
if(b>
c)
d+++1);
else
++d+1);
d);
A)2B)3C)43D)44
(8)下列条件语句中,功能与其他语句不同的是
A)if(a)printf("
elseprintf("
y);
B)if(a==0)printf("
C)if(a!
=0)printf("
D)if(a==0)printf("
{inti=0,s=0;
for(;
;
)
if(i==3||i==5)continue;
if(i==6)break;
i++;
s+=i;
};
s);
A)10B)13C)21D)程序进入死循环
(10)若变量已正确定义,要求程序段完成求5!
的计算,不能完成此操作的程序段是
A)for(i=1,p=1;
=5;
i++)p*=i;
B)for(i=1;
i++){p=1;
p*=i;
C)i=1;
p=1;
while(i<
=5){p*=i;
i++;
D)i=1;
do{p*=i;
}while(i<
=5);
{chara,b,c,d;
%c,%c,%d,%d"
a,&
b,&
c,&
d);
c,%c,%c,%c\n"
a,b,c,d);
}
若运行时从键盘上输入:
6,5,65,66<
则输出结果是
A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,6
(12)以下叙述中正确的是
A)C语言的源程序不必通过编译就可以直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C)C源程序经编译形成的二进制代码可以直接运行
D)C语言中的函数不可以单独进行编译
(13)以下符合C语言语法的实型常量是
A)1.2E0.5B)3.14.159EC).5E-3D)E15
(14)以下4组用户定义标识符中,全部合法的一组是
A)_mainB)IfC)txtD)int
enclude-maxREALk_2
sinturbo3COM_001
(15)若以下选项中的变量已正确定义,则正确的赋值语句是
A)x1=26.8%3B)1+2=x2C)x3=0x12D)x4=1+2=3;
(16)设有以下定义
inta=0;
doubleb=1.25;
charc=’A’;
#defined2
则下面语句中错误的是
A)a++;
B)b++C)c++;
D)d++;
(17)设有定义:
floata=2,b=4,h=3;
以下C语言表达式与代数式计算结果不相符的是
A)(a+b)*h/2B)(1/2)*(a+b)*h
C)(a+b)*h*1/2D)h/2*(a+b)
(18)有以下程序
intx=102,y=012;
printf(“%2d,%2d\n”,x,y);
A)10,01B)02,12C)102,10D)02,10
(19)以下4个选项中,不能看作一条语句的是
A){;
}B)a=0,b=0,c=0;
C)if(a>
0);
D)if(b==0)m=1;
n=2;
(20)设有定义:
inta,*pa=&
a;
以下scanf语句中能正确为变量a读入数据的是
A)scanf(“%d”,pa);
B)scanf(“%d”,a);
C)scanf(“%d”,&
pa);
D)scanf(“%d”,*pa);
二、简答题(20分)
1、运行一个C++源程序的步骤(5分)
2、函数参数传递的形式有哪几种(5分)
3、const有什么用途?
(请至少说明两种)(5分)
4、C程序的特点有哪些?
(5分)
三、填空题(每空2分,共20分)
(1)在关系数据库中,把数据表示成二维表,每一个二维表称为【1】
(2)以下程序运行时若从键盘输入:
20
30<
4*x*x+1
a=3,b=4,c=5,t=99;
a=10;
b=20;
intn1=10,n2=20;
{intn=0,m=1,x=2;
1、编程计算S=1+2+3+……+100(10分)
2、用选择排序法对n个整数排序(降序)
四、编程题:
(每题10分,共20分)
1、用递归方法编程计算S=1!
+2!
+3!
+……+100!
(10分
三、编程题:
(10分)
一、判断是非题(每题1分,共10分,对的打√,错的打×
1、在C程序中,语句之间必须要用分号“;
”分隔….()
2、在C程序中所用的变量必须先定义后使用....()
3、C程序中的注释部分可有可无,通常应该省略...()
4、在C程序中,移位运算符的优先级最低..()
5、若a和b是同类型变量,在执行了赋值语句a=b;
后b中的值将放入a中,b中的值将丢失()
6、break语句只能用在循环语句中.........()
7、C语言中最基本的数据类型包括:
整型、实型、逻辑型、字符型()
8、在C语言的if语句中,可以用数学表达式作判断的表达式.()
9、在C程序中,定义数组必须指明数组元素的个数()
10、在C语言中,所有函数名都必须有参数()
二、单项选择题(每题2分,共40分)
(1)以下叙述中正确的是()
(A)用C语言实现的算法必须要有输入和输出操作
(B)用C语言实现的算法可以没有输出但必须要有输入
(C)用C程序实现的算法可以没有输入但必须要有输出
(D)用C程序实现的算法可以既没有输入也没有输出
(2)以下不能定义为用户标识符是
(A)Main(B)_0(C)_int(D)sizeof
(3)以下选项中,不能作为合法常量的是
(A)1.234e04(B)1.234e0.4(C)1.234e+4(D)1.234e0
(4)数字字符0的ASCII值为48,若有以下程序
main()
{
chara='
1'
b='
2'
b++);
b-a);
程序运行后的输出结果是
(A)3,2(B)50,2(C)2,2(D)2,50
(5)有以下程序A
intm=12,n=34;
%d%d"
m++,++n);
%d%d\n"
n++,++m);
(A)12353514(B)12353513(C)12343514