第二章
1、设整型变量a的值为2,下列表达式值为1的是__。(A)
A) a%3 B) a/3 =0 C) --a D) a++
2. 设变量a、b、c已定义并赋值,则下列表达式中符 合C语言语法规则的是__。 (B)
A) a=5++操作数只能是变量 B) a=b=c++ C) a=%2 D) b=a+1=2左边只能是单个变量,即变量1=变量2=。。。
3. 下列式中,最终运算结果的数据类型不是单精度的表达式是__。(A)
A)(int)(3+3.0) B)1e-3 fen:n必须为整数 C) (float)(3) D)(int)3.0+3.0
4.字符串”ab\x41 \\34cd\102y”的长度是_A_。\xhh表示ASCII码:例\x41,41是16进制的。字符串含有’\0’。’\102’也表示ASCII码,但102是8进制的,长度为10,储存空间占11个字节。
A)10 B)12 C)14 D)18
变量是在程序运行过程中可改变的 它的三要素是类型、名称、数值
6.以下选项中合法的常量是?D
A)’Internet’ B)E_3变量 C)02x D)0xfeL
7.以下选项中合法的赋值表达式是?C
A) d=8+a+f=d+6同2D B)d=(a+8)+ +同2A
C) d=(8+e,e+ +,d+9) D)d=7+e+ + =d+7
8.main( )
{int x=5,y=3;
float f;
f=x/y;表示为整形
printf(“f=%f\n”,f);
}
则程序的输出结果是?f=1.000000
9. 设整型变量x,y,z均为2,表达式(x++)+(y++)+(z++)的值是_A先使用值再加加_。
A) 6 B) 7 C) 8 D) 9
10.设int a=3,b=5;float x=7.5,y=3.5;则表达式(float)a+b/2+(int)x%(int)y;的值是6.0__。
*11.执行语句:int a; a=‘1’+1.5;后,正确的叙述是_D_。
A)a的值是字符‘3’ B)a的值是浮点型
C)不允许字符型和浮点型相加
D)a的值是字符’1’的ASCII码值加上1
12. 设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是_B_。
A)均为2个字节TC与VC不一样 B)0~65535
C)-32768~32767 D)-256至255
13. 执行下列语句后,运行结果为C__。先i++再i++最后+
main()
{ int i=3,j;
j=++i+i++;
printf(“%d\n”,j);
}
A) 6 B) 7 C) 8 D) 9
14.执行下列语句后,运行结果为6;y=1;z=6.000000__ __ __ 。
main()
{
int x=4,y;
float k=4,z;
clrscr( );
printf("%d\n",--x*--x*--x);
x=4;
y=--x*--x*--x;
printf("y=%d\n",y);
z=--k*--k*--k;
printf("z=%f\n",z);}
x为浮点型:从左向右计算。 --i优先于*
x为整型:在输出函数中,从左向右计算;在输出函数外,先连续减,然后乘积。
15. 若a为int类型,且其值为5,则执行表达式a+=a-=a*a后,a的值为_C_。自右至左 a=a-a^2=-20 a=a+a=-40
A) -5 B) -40 C) -15 D)不确定
16. 如果x,y,i和j都是int型变量,则表达式x=(i=1,j=6,y=8)的值为_8_。
17、main()不懂看课件
{int x=0,z,y=z=-1; i--优先于-
x=x---z-y;
printf("x=%d\n",x);
}输出结果是:1
main()
{int x=0,z,y=z=-1;
x=--x-z-y;
printf("x=%d\n",x);
}输出结果是:1
main()
{int x=0,z,y=z=-1;
x=-y-z+--x;
printf("x=%d\n",x);
}输出结果是:1
main()
{int x=0,z,y=z=-1;
x+=--x-z-y; 自右向左
printf("x=%d\n",x);
}输出结果是:0
main()