C语言程序设计习题(含答案)
C\C++程序设计复习题及答案
一、 选择题
1、 一个C语言程序总是从(C )开始执行
A) 书写顺序的第一个函数
B) 书写顺序的第一条执行语句
C) 主函数main( )
D) 不确定
2、以下能正确定义二维数组的是 ( )A.int a[][3];B.int a[][3]=2{2*3};C.int a[][3]={};D.int a[2][3]={{1},{2},{3,4}};
3、设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )
A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x
4、 执行以下程序段后,i的值是 ( C )
int i=10;
switch(i+1)
{ case 10: i++; break;
case 11: ++i;
case 12: ++i; break;
default : i=i+1;
}
A) 11B) 13C) 12D) 14
5、语句while(!e);中的条件!e等价于 ( A )
A) e==0B)e!=1C) e!=0D) 运行时出错
6、下列数据中,为字符串常量的是( ) 。
(A)‘A’
(B)“house”
(C)How do you do.
(D)’$abc’
7、 用 int a[4]={1,2}; 对数组进行初始化后,数组元素a[3]的值是 ( B )
A) 随机值B) 0C) 1 D) F
8、 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )
A)5 B) 6D) 7D 9
9、 若有定义,char *p=”computer”; 则语句printf(“%c”,*(p+2))运行结果是 ( B )
A) 随机值B) mC)oD) omputer
10、有以下程序 ( )main(){ int i=0,x=0;for (;;){if(i==3||i==5) continue;if (i==6) break;i++;s+=i;};printf("%d\n",s);}程序运行后的输出结果是A.10B.13C.21D.程序进入死循环
11、以下定义语句中正确的是 ( )A.char a='A'b='B';B.float a=b=10.0;C.int a=10,*b=&a;D.float *a,b=&a;
12、设有int x=11;则表达式(x++*l/3)的值为( )。
(A)3
(B)4
(C)11
(D)12
13、 在说明一个结构体变量时系统分配给它的存储空间是( D )
A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间
C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和
14、 用C语言编写的代码程序( B )
A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行
15、C语言中用于结构化程序设计的三种基本结构是( A )
A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue
16、下列选项中,不能用作标识符的是( D )
A)_1234_ B)_1_2 C) int_2_ D)2_int_
17、有以下程序main(){ int m=0256,n=256;printf("%o %o\n",mn,n);}程序运行后的输出结果是 ( )A.0256 0400B.0256 256C.256 400D.400 400
18、以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子:(x)/(y×z)的c语言表达式是( )。
(A)x/y*z
(B)x*(1/(y*z))
(C) x/y*1