2011年c语言第一次模拟考试题
一.填空题(26分)
1.C程序是由 构成的,一个C程序中至少包含 。因此, 是C程序的基本单位。
2.一个函数包括 和 两部分 。 3、函数体一般包括 和 两部分。
4、在C语言中,一个char数据在内存中所占字节数为 ,其数值范围为 ;一个int数据在内存中所占字节数为 ,其数值范围为 ;一个long数据在内存中所占字节数为 ,一个float数据在内存中所占字节数为 ,一个double数据在内存中所占字节数为
5、字符常量使用一对 界定单个字符,而字符串常量使用一对 来界定若干个字符的序列。
6、设x=2.5,a=7,y=4.7, 则x+a%3*(int)(x+y)%2/4为 。 7.设a=2,b=3,x=3.5,y=2.5,则(float)(a+b)/2+(int)x%(int)y为 。 8、若a是int变量,则执行表达式a=25/3%3后,a的值是 。 9、char a=?a?,b=?b?,c=?c?,i;则表达式i=a+b+c的值为 。
10、知int x=3,y=2; float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值 11、已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=?a?+?8?-?3?的值为 。 12、‘0’的ASCII值是 。 二.选择题(30分)
1、合法的字符常量是 。
A) ?\\t? B) “A” C) “a” D)?ab? 2、是C语言提供的合法的数据类型关键字 。 A) Float B) signed C) integer D)Ch 3、判断int x = 0xaffbc;x的结果是 。 A)赋值非法 B)溢出 C)为affb D)为ffbc
4、在C语言中,要求参加运算的数必须时整数的运算符是 。 A)/ B)* C)% D) =
5、在C语言中,字符型数据在内存中以 形式存放。 A)原码 B)BCD码 C)反码 D)ASCII码 6、在C语言中,数字029是一个 。
A)八进制数 B)十六进制数 C)十进制数 D)非法数 7、C语言中整数-8在内存中的存储形式为 。 A)1111111111111000 B)100000000001000 C)000000000001000 D)1111111111110111 8、对于char cx=? \\039?;语句,正确的是 。
A)不合法 B)cx的ASCII值是33 C)cx的值为四个字符 D)cx的值为三个字符 9、若int k=7,x=12;则能使值为3的表达式是 。 A)x%=(k=k%5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)
10、假定x和y为double型,则表达式x=2,y=x+3/2的值是 。 A)3.500000 B)3 C)2.000000 D)3.000000 11、下选项中不属于C语言的类型是 。 A)signed short int B)unsigned long int c)unsigned int D)long short
12、以下选项中属于C语言的数据类型是 。 A)复数型 B)逻辑型 C)双精度型 D)集合型 13、已知:int x=1,j;执行以下语句j=i++后,i的值 。 A)1 B)2 C)3 D)4
14、设d为字符变量,下列表达是不正确的是 。 A)d=?g? B)d=?a? C)d=97 D)d=”g”
15、若x为int型变量,x=6;则执行下列语句后,x的值为 。 x=(x++)+1;
A)6 B)7 C)8 D)9
三.程序阅读题(25分) 1.写出以下程序运行的结果。 main ( ) {
char c1=?a?,c2=?b?,c3=?c?,c4=?\\101?,c5=?116?; printf(“%c %c\\t%c\\n”,c1,c2,c3); printf(“\\t\\%c %c”,c4,c5); }
2.写出以下程序运行的结果。 main ( ) {
int i,j,m,n; i=8; j=10; m=++i; n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
}
3、执行下列程序片段时输出结果是。 int x=13,y=5;
x=x%y/y printf(“%d”,x);
4.下列程序的输出结果是。 main ( ) { int x=023;
printf(“%d”,--x); }
5、main()
{ int c1,c2; c1=97; c2=98;
printf(“%c%c”,c1,c2); printf(“%d %d”,c1,c2);} 四、按要求计算
1、将下面十进制数用八进制和十六进制数表示:(20分) (1) 76
八进制: 十六进制: (2)-2
八进制: 十六进制: (3) (4) (5)
2010 -12 0
八进制: 十六进制: 八进制: 十六进制: 八进制: 十六进制: 2、求下列各数的原码、反码、补码(用八位表示)(30分)
(1)46
原码: 反码: 补码: (2)-17
原码: 反码: 补码:
(3)-1
原码: 反码: 补码: (4)126
原码: 反码: 补码: (5)-58
原码: 反码: 补码:
3、(19分)若采用十进制数表示,则(1)077为: (2)0111为: (3)0xab为: (4) 0xd为: (5)-034为:

