计算机学院2008-2009学年第2学期C语言程序设计考试试卷
单项选择题(在下面每小题的A、B、C、D四个选项中,只有一个选项是正确的,请选择正确的选项并填写到括号内,选择正确得分。本大题共10小题,每小题1分,共10分。)
1、ENUM是 【 b 】
A、合法标识符 B、C语言的关键字
C、合法的字符串 D、既不是C语言的关键字,也不是合法的字符串或标识符
2、下列数据中属于合法字符常量的是 【 d 】
A、'\' B、'\xag' C、'45' D、'\''
3、下列数据中合法的浮点型常量是 【 c 】
A、E+10 B、2E+1.5 C、2E-10 D、0x2.5E10
4、下列数据中与256等值的数为 【 】
A、0256 B、0400 C、0x400 D、0x256
5、以下叙述中正确的是 【 】
A、局部变量说明为static存储类型,其生存期将得到延长
B、全局变量说明为static存储类型,其作用域将被扩大
C、任何存储类型的变量在未赋初值时,其值都是不确定的
D、形参可以使用的存储类型说明符与局部变量完全相同
6、 -127的16位补码的十六进制表示是 【 】
A、0xff81 B、0x807f C、0xff80D、0x8080
7、?对于下面的数组声明,正确的是 【 】
A、int x[][5]; B、char t[ ]={‘a’,’b’,’c’,’\0’};
C、int n=5,a[n]; D、char s[5]=“abcde”;
8、若有以下说明和语句,则在执行for语句后,*(*pt+2)表示的数组元素【 】int t[3][3],(*pt)[3],k;for (k=0;k<3;k++) pt = t+k;
?A、t[1][2] B、t[2][0] C、t[2][1] D、t[2][2]
9、已知枚举类型定义: enum a {ONE=5,TWO=3,THREE}; 则THREE的值的是 【 】
A、1 B、2 C、4 D、0
10、设有以下说明和语句,则表达式z.y.a2的值的是 【 】
struct packed {
unsigned short a1 : 2;
unsigned short a2 : 2;
unsigned short a3 : 4;
unsigned short a4 : 8;
};
union {
short x;
struct packed y;
} z;
z.x=0xabab;
A、11 B、3 C、2 D、10
多项选择题(下面每小题的A、B、C、D备选项中,有两个或两个以上的选项是正确的,请选择正确的选项并填写到括号内,多选、少选、错选均不得分。本大题共5小题,每小题2分,共10分。)
1、以下选项可作为C语言合法整型常量的是: 【 】
A、0xf9B、100UC、0XABCDE12LD、0287
2、对于下面关于数组声明,正确的是: 【 】
A、int c[2,3];B、int b[’b’-’a’];
C、int x,a[x][3];D、char d[11]="abc\ndef\n";
3、设有声明:int k[2],*p1=k,*p2=p1;下面能够正确执行的语句有:【 】
A、k=p1;B、p2=k+1;C、p1=p2;D*p1*=*p2;
4、设有说明:
struct T{
int n[2];
char *s;
} t[2]={{{1,0},"xy"},{{0, 1},"yx"}},*p=t;
下面表达式之值为 ’x’(或其ASCII码值为120)的是: 【