2014年C语言试题
- 格式:docx
- 大小:23.06 KB
- 文档页数:16
2014年C语言试题
一、选择题(40*1)
1 对用C语言编写的代码程序,以下叙述中正确的是(B)
A、可立即执行
B、是一个源程序
C、经过编译即可执行
D、经过编译解释才能执行
2 以下选项中正确的实型常量是(D)
A、0
B、3. 1415
C、0.03*102
D、.32
3 C语言中不合法的字符串常量是(B)
A、"\121 "
B、'y= '
C、"\n\n "
D、"ABCD\x6d "
4 C语言中运算必须是整型的运算符是(B)
A、/
B、%
C、*
D、+
5 C语言中的简单数据类型有(C)
A、整型、实型、逻辑型
B、整型、字符型、逻辑型
C、整型、实型、字符型
D、整型、实型、逻辑型、字符型
6 以下选项中不合法的用户标识符是(D)
A、PRINTF B、file
C、Main
D、wb-1
7 以下非法的赋值语句是(C)
A、n=(i=2,++i)
B、j++
C、++(i+1)
D、x=i>0
8 C语言中不合法的常量是(D)
A、'\xff '
B、'\65 '
C、'& '
D、'\028 '
9 C语言中,字符(char)型数据在计算机内存中的存储形式是(D)
A、反码
B、补码
C、EBCDIC码
D、ASCII码
10 以下程序的输出结果是(D)
void main()
{ int x=10,y=3;printf("%d\n ",y=x/y);}
A、0
B、1
C、不确定的值
D、3
11 以下程序段的输出是(A)
int x=496;printf("*%-06d*\n ",x);
A、*496 *
B、* 496* C、*000496*
D、输出格式不合法
12 若变量已经正确说明为int类型,要给a,b,c输入数据,以下正确的输入语句是(D)
A、read(a,b,c);
B、scanf("%d%d%d ",a,b,c);
C、scanf("%D%D%D ",&a,&b,&c)
D、scanf("%d%d%d
",&a,&b,&c)
13 以下合法的C语言赋值语句是(D)
A、a=b=58
B、k=int(a+b);
C、a=58,b=58
D、- - i;
14 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是(A)
A、1
B、0
C、2
D、6
15 以下程序执行后输出结果是(B)
void main()
{ int i=10,j=1;printf("%d,%d\n ",i--,++j);}
A、9,2
B、10,2
C、9,1
D、10,1
16 设有语句char a= '\172 ';,则变量a(A)
A、包含一个字符
B、包含2个字符 C、包含个字
符D、说明不合法
17 若变量已经正确定义,要将a和b中的数据进行交换,下面不正确的语句是(C)
A、a=a+b,b=a-b,a=a-b;
B、t=a;a=b;b=t
C、a=t;t=b;b=a;
D、t=b;b=a;a=t;
18 若变量已经正确说明,要求用以下语句给c1赋值字符%,给c2赋值字符#,给a赋值2.0,给b赋值4.0,则正确的输入形式是(B)
scanf("%f%c%f%c ",&a,&c1,&b,&c2);
A、2.0 % 4.0 #
B、2.0%4.0#
C、2 % 4#
D、2 % 4 #
19 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)
A、6.500000
B、7
C、5.500000
D、6.000000
20 以下程序执行后的输出结果是(D)
void main()
{int i=1,j=1,k=2;if((j++||k++)&& i++) printf("%d,%d,%d\n
",i,j,k);}
A、1,1,2
B、2,2,1
C、2,2,2
D、2,2,3 21 下列运算符中优先级最高的运算符是(A)
A、!
B、%
C、-=
D、&&
22 运行以下程序后,输出的结果是(A)
void main()
{ int k=-3;
if(k<=0)
printf("****\n ");
else
printf("&&&&\n ");
}
A、****
B、&&&&
C、****&&&&
D、有语法错误不能通过编译
23 以下程序段的输出结果是(B)
void main()
{ char x= 'A ';
x=(x> 'A ' && x< 'Z ')?(x+32):x; printf("%c\n ",x );
}
A、a
B、A
C、Z
D、z
24 以下的程序执行后输出的结果是(A)
void main()
{ int a=5,b=4,c=3,d=2;
if(a>b>c) printf("%d\n ",d);
else if((c-1>=d)==1)
printf("%d\n ",d+1);
else printf("%d\n ",d+2);
}
A、3
B、2
C、编译出错
D、4
25 若执行以下程序时从键盘上输入3和4(输入方式:3 4),则输出的结果是(C)
void main()
{ int a,b,s;
scanf("%d%d ",&a,&b);
s=a;
if(a
s*=s;
printf("%d\n ",s);
}
A、14
B、18
C、16
D、20
26 设a、b和c都是int变量,且a=3,b=4,c=5,则以下的表达式中,值为0的表达式是(D)
A、a&&b
B、a<=b
C、
a||b+c&&b-c D、!((a
27 以下的程序运行结果是(D) void main()
{ int a=2,b=-1,c=2;
if(a
if(b<0) c=0;
else c+=1;
printf("%d\n ",c);
}
A、0
B、1
C、3
D、2
28 以下程序的输出结果是(C)
void main()
{ int x=1,a=0,b=0;
switch(x)
{
case 0:b++;
case 1:a++;
case 2:a++;b++;
}
printf("a=%d,b=%d\n ",a,b);
}
A、a=2,b=2
B、a=1,b=1
C、a=2,b=1
D、a=1,b=0
29 若x是int类型变量,以下程序段的输出结果是(D)
for(x=3;x<6;x++)
printf((x%2)?( "**%d "):( "##%d\n "),x);
A **3 B ##3
C ##3
D **3##4
##4 **4 **4##5 **5
**5 ##5
30 以下程序的输出结果是(A)
int n=10;
while(n>7)
{ n--;
printf("%d ",n);
}
A、987
B、1098
C、10987
D、9876
31 以下程序段的输出结果是(C)
int i,j,m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4){m++;}
printf("%d\n ",m);
A、12
B、15
C、20
D、25
32 以下程序段的输出结果是(C)
int x=3;
do
{ printf("%3d ",x-=2);
} while(!(--x));
A、1 B、3 0
C、1 -2
D、死循环
33 以下的程序输出结果为(A)
void main()
{ int i;
for(i=0;i<3;i++)
switch(i)
{ case 1:printf("%d",i);
case 2:printf("%d",i);
default: printf("%d",i);
}
}
A、011122
B、012
C、012020
D、120
34 以下程序的输出结果是(C)
# include
void man()
{ int i;
for(i=1;i<5;i++)
{if(i%2) putchar('< ');
else continue;
putchar('> ');}
putchar('# ');
}
A、<><><>#
B、><><><#
C、<><>#