2011年计算机等级二级C语言章节习题及答案(2)
第3章 数据类型运算符与表达式
一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)
3.1 C语言中最简单的数据类型包括
A)整型、实型、逻辑型
B)整型、实型、字符型
C)整型、字符型、逻辑型
D)字符型、实型、逻辑型
正确答案: B
3.2 C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符
A)必须为字母
B)必须为下划线
C)必须为字母或下划线
D)可以是字母,数字和下划线中任一字符
正确答案: C
3.3 下列可用于C语言用户标识符的一组是
A)void, define, WORD
B)a3_b3, _123,Car
C)For, -abc, IF Case
D)2a, DO, sizeof
正确答案: B
3.4 下面四个选项中,均是不正确的8进制数或16进制数的选项是
A)016 0x8f 018
B)0abc 017 0xa
C)010 -0x11 0x16
D)0a12 7ff -123
正确答案: D
3.5 下列数据中,不合法的C语言实型数据的是
A)0.123
B)123e3
C)2.1e3.5
D)789.0
正确答案: C
3.6 在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是
A)a=20000+20000;
B)a=4000*10;
C)a=30000+10000;
D)a=4000L*10L;
正确答案: D
3.7 若有说明语句:char c='\72';则变量c
A)包含1个字符
B)包含2个字符
C)包含3个字符
D)说明不合法,c的值不确定
正确答案: A
3.8 有字符串如下,"\n\\\407as1\"\xabc",则字符串的长度为
A)6
B)7
C)8
D)9
正确答案: D
3.9 C语言中运算对象必须是整型的运算符是
A)%=
B)/
C)=
D)<=
正确答案: A
3.10 若变量已正确定义并赋值,以下符合C语言语法的表达式是
A)a:=b+1
B)a=b=c+2
C)int 18.5%3
D)a=a+7=c+b
正确答案: B
3.11 若变量a,i已正确定义,且i已正确赋值,合法的语句是
A)a= =1
B)++i;
C)a=a++=5;
D)a=int(i);
正确答案: B
3.12 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是
A)2.500000
B)2.750000
C)3.500000
D)0.000000
正确答案: A
3.13 若有运算符<<,sizeof,^,&=,则它们按优先级由高至低的正确排列次序是
A)sizeof,&=,<<,^
B)sizeof,<<,^,&=
C)^,<<,sizeof,&=
D)<<,^,&=,sizeof
正确答案: B
3.14 以下不正确的叙述是
A)在C程序中,逗号运算符的优先级最低
B)在C程序中,APH和aph是两个不同的变量
C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
正确答案: D
3.15 已知int i,a;执行语句i=(a=3,a++,- -a,a+4,a+5,++a);后,变量i的值为
A)2
B)3
C)4
D)5
正确答案: C
3.16 设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为
A)int
B)float
C)double
D)不确定
正确答案: C
3.17 在C语言中,char型数据在内存中的存储形式是
A)补码
B)反码
C)原码
D)ASCII码
正确答案: D
3.18 字符型数据在机器中是用ASCII码表示的,字符’5’和’7’在机器中表示为
A)10100011和 01110111
B)01000101和01100011
C)00110101和00110111
D)01100101和01100111
正确答案: C
3.19 不能进行++和- -运算的数据类型为
A)指针
B)整型
C)长整型
D)常量
正确答案: D
3.20 设有int x=11;则表达式(x++*1/3)的值是
A)3
B)4
C)11
D)12
正确答案: A
3.21 以下程序的输出结果是
main()
{ int a=21,b=11;
printf("%d\n",- -a+b,- -b+a);
}
A)30
B)31
C)32
D)33
正确答案: A
3.22 假设整型变量a,b,c的值均为5,则表达式a+++b+++c++的值为
A)17
B)16
C)15
D)14
正确答案: C
3.23 已知int a=6; 则执行a+=a-=a*a;语句后,a的值为
A)36
B)0
C)-24
D)-60
正确答案: D
3.24 设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是
A)n=(n*100+0.5)/100.0
B)m=n*100+0.5,n=m/100.0
C)n=n*100+0.5/100.0
D)n=(n/100+0.5)*100.0
正确答案: B
3.25 sizeof(float)是
A)一个双精度型表达式
B)一个整型表达式
C)一种函数调用
D)一个不合法的表达式
正确答案: B
3.26 在C语言中,int,char和short三种类型数据在内存中所占用的字节数
A)由用户自己定义
B)均为2个字节
C)是任意的
D)由所用机器的机器字长决定
正确答案: D
3.27 以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子x÷y÷z的C语言表达式是
A)x/y*z
B)x*(1/(y*z))
C)x/y*1/z
D)x/y/z
正确答案: A
3.28 下列关于复合语句和空语句的说法错误的是
A)复合语句是由“{”开头,由“}”结尾的
B)复合语句在语法上视为一条语句
C)复合语句内,可以有执行语句,不可以有定义语句部分
D)C程序中的所有语句都必须由一个分号作为结束
正确答案: C
3.29 下列关于字符串的说法中错误的是
A)在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\0′作为字符串结束标志
B)′\0′作为标志占用存储空间,计入串的实际长度
C)在表示字符串常量的时候不需要人为在其末尾加入′\0′
D)在C语言中,字符串常量隐含处理成以′\0′结尾
正确答案: B
二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)
3.30 以下程序的输出结果是【1】。
int a=1234;
printf ("-\n",a);
正确答案: 1234
3.31 在计算机中,字符的比较是对它们的【2】进行比较。
正确答案: ASCII码
3.32 在内存中,存储字符′x′要占用1个字节,存储字符串″X″要占用【3】个字节。
正确答案: 2
3.33 在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4;一个double型数据在内存中所占的字节数为【4】。
正确答案: 8
3.34 以下程序段的输出结果是【5】。
main ()
{int a=2,b=3,c=4;
a*=16+(b++)-(++c);
printf("%d",a);
}
正确答案: 28
3.35 以下程序段的输出结果是【6】 。
int x=17,y=26;
printf ("%d",y/=(x%=6));
正确答案: 5
3.36 下列y的值是 【7】 。
int y; y=sizeof(2.25*4);
正确答案: 8
3.37 以下程序的输出结果是 【8】 。
main ()
{int i=010,j=10;
pirntf ("%d,%d\n",i,j);
}
正确答案: 8,10
3.38 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=′a′+′8′-′3′的值为 【9】 。
正确答案: f
3.39 如下语句printf("%c\n",′B′+40);在执行后的输出结果是 【10】 。
正确答案: j
3.40 定义int a=5,b=20;若执行语句printf("%d\n",++a*- -b/5);后,输出的结果为 【11】 。
正确答案: 9
编辑推荐:
一、2010年全国计算机二级C语言考试题型分析
二、2010年全国计算机二级C语言考试教材及出题比例
三、2010年全国计算机二级C语言考试教材各章的特点及学习方法
四、2010年全国计算机二级C语言考试答题策略及技巧
五、2010全国计算机等级考试二级C编程时常犯的错误
六、2010年全国计算机二级C语言考试就业方向和就业前景