50
表达式17%4/8的值是
(A)0(B)1
(C)2(D)3
51下列说法正确的是2834
(A)在执行C程序时不是从main()函数开始(B)C语言程序书写格式限制严格,一行内只能写一条语句
(C)C语言程序书写格式比较自由,一条语句可以分写在多行上(D)C语言程序书写格式严格,要求一行内必须写一条语句,并要有行号
52
逻辑运算符两侧运算对象的数据类型
(A)只能是0或1(B)只能是0或非0正数
(C)可以是正数或字符型数据(D)是逻辑型
53
若有代数式3ae/(bc),则错误的C语言表达式为
(A)a/b/c*e*3(B)3*a*e/b/c
(C)3*a*e/b*c(D)a*e/c/b*3
54
用C语言编写的代码程序
(A)可立即执行(B)是一个源程序
(C)经过编译即可执行(D)经过编译解释才能执行
55
以下叙述中正确的是
(A)C语言的源程序不必通过编译就可以直接运行(B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
(C)C源程序经编译形成的二进制代码可以直接运行(D)C语言中的函数不可以单独进行编译
56
以下关于if语句的错误描述是
(A)条件表达式可以是任意的表达式(B)条件表达式只能是关系表达式或逻辑表达式
(C)条件表达式的括号不能省(D)与else配对的if语句是其之前最近的未配对的if语句
57
若变量x、y、z被定义为float型,通过语句scanf("%f%f%f",&x,&y,&z);给x输入15.0,给y输入25.0,给z输入35.0,下列输入形式不正确的是
(A)152535(B)152535
(C)15.025.035.0(D)15.0,25.0,35.0
58
若变量x、y被定义为float型,通过语句scanf("x=%f,y=%f",&x,&y);给x输入1.23,给y输入1.26,下列输入形式正确的是
(A)x=1.23,y=1.26(B)1.23,1.26
(C)1.231.26(D)x=1.23y=1.26
59
若变量a、b、c被定义为int型,从键盘给他们输入数据,正确的输入语句是
(A)scanf("%d%d%d",&a,&b,&c);(B)scanf("%d%d%d",a,b,c);
(C)scanf("%f%f%f",&a,&b,&c);(D)inputa,b,c;
60
若定义floata;,要从键盘给a输入数据,其整数位为3位,小数位为2位,则选用
(A)scanf("%f",&a);(B)scanf("%f",a);
(C)scanf("%6.2f",&a);(D)scanf("%6.2f",a);
61对于以下程序代码段,叙述正确的是
charc1='D',c2='d';
printf("%c\n",(c1,c2));
(A)缺少一个格式说明符,编译出错(B)程序运行时产生出错信息
(C)程序输出大写字母D(D)程序输出小写字母d
62
下面程序代码段输出的结果是
intx=2,y=5;
printf("%f\n",(float)(x/y));
(A)0.000000(B)0
(C)0.40000(D)0.4
63
当输入数据形式为“25,13,10”时,下面程序代码段输出的结果是
inta,b,c;
scanf("%d%d%d",&a,&b,&c);
printf("a+b+c=%d\n",a+b+c);
(A)a+b+c=48(B)a+b+c=35
(C)a+c=48(D)随机数
64
以下说法正确的是
(A)输入项可以为一个实型常量,如scanf("%f",3.5);(B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");
(C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&x);(D)当输入数据时,必须指明变量的地址,如scanf("%f",&x);
65
putchar函数可以向终端输出一个
(A)整型变量表达式(B)实型变量值
(C)字符串(D)字符或字符变量值
66
已知ch是字符变量,下面正确的赋值语句是
(A)ch='123';(B)ch='\xff';
(C)ch='\08';(D)ch='\';
67
若有a=1,b=0,c=2,d=3,则条件表达式a
a:
cc:
d的值是
(A)0(B)1
(C)2(D)3
68
如果从键盘输入数据23,下面程序代码段输出的结果是
intx;
scanf("%d",&x);
if(x>10)
{
printf("%d",x);
}
if(x>20)
{
printf("%d",x);
}
if(x>30)
{
printf("%d",x);
}
(A)23(B)2323
(C)232323(D)都不正确
69
下面程序代码段的输出结果是
inta=15,b=10,c=20,d;
d=a>12?
b:
c;
switch(d)
{
case5:
printf("%d,",a);
case10:
printf("%d,",b);
case20:
printf("%d,",c);
default:
printf("#\n");
}
(A)15,10,20,#(B)10,20,#
(C)10,20(D)10
70
下面程序代码段的输出结果是
inta=2,b=3,c=1;
switch(c)
{
case0:
a++;
case1:
a++;
b++;
case2:
b++;
}
printf("a=%d,b=%d\n",a,b);
(A)a=3,b=5(B)a=3,b=4
(C)a=4,b=4(D)a=4,b=5
71关于为什么要学习C语言,以下描述错误的是
(A)C语言早就过时了,应该学习最流行的语言。
(B)通过对C语言的学习,可以培养工程推理和解决问题的能力。
(C)C语言是结构化程序设计语言,是面向对象程序设计的基础。
(D)非计算机专业同学学习C语言,可以培养使用计算机解决问题的思维和能力。
72
执行了以下程序段后x,w的值为
intx=0,y=1,z=2,w;
if(x++)
{
w=x;
}
elseif(x++&&y>=1)
{
w=y;
}
elseif(x++&&z>1)
{
w=z;
}
(A)0,1(B)1,1
(C)2,1(D)3,2
73
下列语句中,错误的是
(A)while(x=y)5;(B)dox++while(x==10);
(C)while(0);(D)do2;while(a==b);
74
若有整型变量i,j,则以下程序段中内循环体“printf("ok");”的循环次数为
for(i=5;i;i--)
{
for(j=0;j<4;j++)
{
printf("ok");
}
}
(A)20(B)24
(C)25(D)30
75
假定a和b为int型变量,则执行以下语句后b的值为
a=1;
b=10;
do
{
b-=a;
a++;
}while(b--<0);
(A)9(B)8
(C)-2(D)-1
76
循环语句“for(x=0,y=0;(y!
=123))||(x<4);x++);”的循环次数为
(A)无限次(B)不确定
(C)4次(D)3次
77
在C语言中,下列说法中正确的是
(A)不能使用“do语句while(条件);”的循环(B)“do语句while(条件);”的循环中,当条件为非0时结束循环
(C)“do语句while(条件);”的循环中,当条件为0时结束循环(D)“do语句while(条件);”的循环必须使用break语句退出循环
78
下述程序代码段输出的结果是
intk=11;
printf("k=%d,k=%o,k=%x",k,k,k);
(A)k=11,k=13,k=b(B)k=11,k=12,k=11
(C)k=11,k=13,k=13(D)k=11,k=013,k=0xb
79
以下程序段中,while循环的循环次数是
inti=0;
while(i<10)
{
if(i<1)
{
continue;
}
if(i==5)
{
break;
}
i++;
}
(A)死循环,无限次(B)1
(C)6(D)10
80
设x和y均为int型变量,则执行下面的循环后y的值为
for(y=1,x=1;y<=50;y++)
{
if(x>=10)
{
break;
}
if(x%2==1)
{
x+=5;
continue;
}
x-=3;
}
(A)2(B)4
(C)6(D)8
81设i,j,k均为整型变量,则执行如下语句后,k的值为
for(i=0,j=10;i<=j;i++,j--)
{
k=i+j;
}
(A)8(B)9
(C)10(D)11
82
以下程序段的输出结果是2903
inta=0,i;
for(i=1;i<5;i++)
{
switch(i)
{
case0:
case3:
a+=2;
case1:
case2:
a+=3;
default:
a+=5;
}
}
printf("%d\n",a);
(A)31(B)13
(C)10(D)20
83
以下程序段的输出结果是
inti=0,a=0;
while(i<20)
{
for(;;)
{
if(i%10==0)
{
break;
}
else
{
i--;
}
}
i+=11;
a+=i;
}
printf("%d\n",a);
(A)21(