1.选择题
(1)以下字符串为标识符的是 。
A._MY B.2_2222 C.short D.LINE 5
(2)下列符号可以作为变量名的是 。
A.+a B.*p C._DAY D.next day
(3)设c是字符变量,则以下表达式正确的是 。
A.c=666 B.c='c' C.c="c" D.c="abcd"
(4)23+'m'+3.6-123.45/'b'的结果是 型数据。
A.char B.double C.int D.long int
(5)若变量已正确赋值,则以下符合C语言语法的表达式是 。
A.a=a+7; B.a=7+b+c,a++
C.int(12.3%4) D.a=a+7=c+b
(6)整型变量x=1,y=3,经下列计算后,x的值不等于6的表达式是 。
A.x=(x=1+2,x*2) B.x=y>2?6:5
C.x=9-(--y) -( --y) D.x=y*(int)(4.8/2)
(7)若定义
int m=7,n=12;
则能得到值为3的表达式是 。
A.n%=(m%=5) B.n%=(m-m%5)
C.n%=m-m%5 D.(n%=m) -(m%=5)
2.填空题
(1)双精度型实数的表示范围是 ,其有效位是 。
(2)关系表达式的运算结果是 值。
(3)逻辑运算符!是 运算符,其结合性是由 。
(4)表达式的运算对象可以是常数、变量和 。
(5)已知char c;表达式(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)&&c==27的值为1,则变量c的值可以是 。
3.上机操作题
(1)分析下面程序的输出结果。
void main()
{
int x=10,y=10;
printf("%d%d\n",x――,――y);
}
(2)分析下面程序执行后的结果。
void main()
{
int a=3,b=7;
printf("%d\n",a+++++b);/*①*/
printf("%d\n",b%a);/*②*/
printf("%d\n',!a>b);/*③*/
printf("%d\n",a+b);/*④*/
printf("%d\n",a&&b);/*⑤*/
}
(3)分析表达式(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)&&c==27的计算结果可能是什么。