C语言第二章
C语言复习(第二章)
一、填空
1、若采用十进制数的表示形式,则077为( ),0111为( ),0xab为( )。 2、C语言中的标识符只能由3种字符组成,它们是( )、( )和( )。 3、在C语言中,用“\\”开头的字符序列称为转义字符。转义字符“ \\n”的功能是( ),“\\r”是( ),“\\t”是( )。
4、在C语言中,用关键字( )定义单精度实型变量,用( )定义双精度实型变量,用( )定义字符型变量。
5、设C语言中的一个基本整型数据在内存中占2个字节,若欲将整数135791正确无误地存放在变量a中,应采用的类型说明语句是( )。 6、在C语言的赋值表达式中,赋值号左边必须是( )。 7、表达式x=6应当读做( )
8、若有语句:int m=5,y=2;则执行表达式y+=y-=m*=y后的y值是( )。
9、设C语言中的一个int型数据在内存中占2个字节,则int 型数据的取值范围为( )。 10、在C语言中的实型变量分为两种类型,它们是( )和( )。
11、已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’b’+’25’-‘23’
的值为( )。
12、若有定义语句:int s=6;则表达式s%2+(s+1)%2的值为( )。 13、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为( )。
14、若x和a均是int型变量,则执行表达式(1)后的X值为( ),执行表达式(2)
后的X值为( )。 (1)x=(a=8,5*3)
(2)x=a=8,5*3
15、若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后a的值为( ),b的值
为( ),c的值为( )。
16、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为( )。 17、若a是int型变量,则执行表达式a=25/3%3后a的值为( )
18、若x和n均是int型变量,且x 和n的初值均为5,则表达式x+=n++后x的值为( ),
n的值为( )。
19、若有定义语句: int b=7; float a=2.5,c=4.7; 则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为
( )。
20、若有定义语句: int b=2, b=3; float x=3.5,y=2.5; 则表达式(float)(a+b)/2+(int)x%(int)y的
值为( )。
21、若有定义语句:char c=’\\010’; 则变量c 中包含的字符个数为( )。
22、若有定义语句: int x=2, y=3; float a=3.5,b=2.5; 则表达式 (x+y)%2+(int)a/(int)b的值为
( )。
23、若x和n均是int型变量,且x=12,n=5,则执行表达式x%=(n%=2)后x的值为( )。 24、假设变量a,b均为整型,则表达式(a=4,b=4,a++,b++,a+b)的值为( )。 25、若x和y都是double型变量,且x的初值为5.0,y的初值为2.0,则表达式pow(y,fabs(x))
1
C语言第二章
的值为( )。
27、若有定义语句:int e=1,f=4,g=2; float m=10.5,n=4.0,k;,则执行表达式
k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是( )。 28、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为( )。
29、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后的值
为( )。x%=(n%=2)
30、C语言中的标识符只能由三种字符组成,它们是( )、( )和( )。
二、判断
( )1、符号常量与变量的作用相同,其值在它的作用域内可以改变,也可以再被赋值。 ( )2、符号常量必须用大写。
( )3、C语言规定,标识符可以由任意字符组成
( )4、在标识符中大写字母与小写字母被认为是两个不同的字符。 ( )5、一个实型数据在内存中是以double 型处理的。 ( )6、字符型变量可以用来存放字符常量与字符串。 ( )7、字符型数据与整型数据是通用的。 ( )8、在输入字符串时必须在最后加上’\\0’字符。
三、选择
1、在C语言中,5种基本数据类型的存储空间长度的排列顺序( ) A、charB、float
la0 _A
C、b-a
goto int
D、-123
temp INT
P_0
3、下面四个选项中,均是合法的浮点数的选项是( ) A、+1e+1
5e-9.4 03e2
B、-60
12e-4 -8e5
C、123e
1.2e- +2e-1
D、-e3
4.8e-4 5.e-0
4、已知各变量的类型说明如下
int k,a,b;
unsigned long w=5; double x=1.42;
B、w+=-2
D、a+=a-=(b=4)*(a=3)
则以下不正确的表达式是( ) A、x%(-3) C、k=(a=2,b=3,a+b)
5、已知各变量的类型说明如下:
int i=8,k,a,b;
2
C语言第二章
unsigned w=5;
double x=1.42, y=5.2; 则以下正确的表达式是( ) A、a+=a-=()b=4*(a=3) C、x%(-3)
B、a=a*3=2 D、y=float(i)
6、以下不正确的叙述是( ) A、在C程序中,逗号运算符的优先级最低 B、在C程序中,APH和 aph是两个不同的变量
C、若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变D、当从键盘输入数据时,对于整型变量只能输入整型数值,实型变量只能输入实型数值 7、以下正确的叙述是( ) A、在C程序中,每行中只能写一条语句
B、若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整形数 C、在C程序中,无论是整数还是实数,都能被准确无误地表示 D、在C程序中,%是只能用于整数运算的运算符
8、已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2=’A’+’6’-‘3’;后,c2中的值为( ) A、D
B、68
C、C
D、不确定的值
9、若有说明语句:char c=’\\72’;则变量c( ).
A、包含1个字符 B、包含2个字符 C、包含3个字符 D、说明不合法,c的值不确定 10、sizeof(float)是( ) A、一个双精度型表达式 C、一种函数调用 A、int
B、一个整形表达式 D、一个不合法的表达式 C、double
D、不确定
11、设变量a是整形,f是实型,i是双精度,则表达式10+’a’+i*f值的数据类型为( )
B、float
12、设以下变量均为int类型,则值不等于7的表达式是( ) A、(x=y=6,x+y,x+1) A、补码
xB、(x=y=6,x+y,y+1) C、(x=6,x+1,y=6,x+y) D、(y=6,y+1,x=y,x+1)
C、原码
D、ASCII码
13、在C语言中,char型数据在内存中的存储形式是( )
B、反码
四、写为C语言表达式
1、
y?log10y
32、|x?log10x|
3、v?43r 113
4、R?R1?1R2
3
C语言第二章
五、编程
1、输入3个字符,然后按输入的顺序输出这3个字符,并依次输出它们的ASCII码值,最后再按与输入字符相反的次序输出这3个字符。
4