前排温馨提醒:善用Ctrl+F查找页面内容
一、选择题
1
2.1 关于C程序第1行的包含语句,以下写法中正确的是______。
- A、
#includestdio.h
- B、
#include’stdio.h’
- C、
#include(stdio.h)
- D、
#include
正确答案: D
2
2.2 以下________不是 C 语言的关键字。
- A、
while
- B、
auto
- C、
break
- D、
printf
正确答案: D
3
2.3 以下________是合法的用户标识符。
- A、
3ab
- B、
_isw
- C、
float
- D、
b-bwhile
正确答案: B
4
2.4 以下选项中,三种类型都是 C 语言的基本类型的是________。
- A、
int, long, real
- B、
integer, short, double
- C、
int, float, char
- D、
int, decimal, char
正确答案: C
5
2.5 以下选项中错误的整型常量是________。
- A、
123.
- B、
-346
- C、
0x5A
- D、
0777
正确答案: A
6
2.6 以下选项中正确的 C 语言常量是________。
- A、
0xEfGh
- B、
‘XYZ’
- C、
12.34e5
- D、
‘\5A’
正确答案: C
7
2.7 设要定义 n 为整型变量,定义x 为双精度实型变量,正确的语句是________。
- A、
int n, double x,
- B、
int n, double x;
- C、
int n; double x;
- D、
int n; double x,
正确答案: C
8
2.8 把 x,y 定义成float 类型,并赋同一初值3.14,正确的是________。
- A、
float x,y=3.14;
- B、
float x,y=2*3.14;
- C、
float x=y=3.14;
- D、
float x=3.14,y=x;
正确答案: D
9
2.9 下列关于 long、int、short 类型数据占用内存大小叙述中正确的是________。
- A、
均占4 个字节
- B、
根据数据的大小来决定所占内存的字节数
- C、
由C 语言编译系统决定
- D、
由用户自己定义
正确答案: C
10
2.10 设有 int n=10; 要求屏幕上显示“n=10”结果,正确的语句是________。
- A、
printf( n );
- B、
printf( “n=”, n );
- C、
printf( “n=%d”, n );
- D、
printf( “n=%d”, &n );
正确答案: C
11
2.11 设有 int n; 从键盘上输入整数给变量n,正确的语句是________。
- A、
scanf( n );
- B、
scanf( “n” );
- C、
scanf( “%d”, n );
- D、
scanf( “%d”, &n );
正确答案: D
12
2.12 以下________语句输出字符’a’的ASCII 编码。
- A、
printf(“%d”,a);
- B、
printf(“%d”,’a’);
- C、
printf(“%c”,’a’);
- D、
putchar(a);
正确答案: B
13
2.13 设有定义 int a; char c; 执行输入语句
scanf(“%d%c”,&a,&c);
若要求 a 和c 得到的值为10 和’Y’,请选择正确的键盘输入方式________。
- A、
10,Y
- B、
10Y
- C、
10Y
- D、
10Y
正确答案: B
14
2.14 设有 char ch; 与语句“ch=getchar();”等价的语句是________。
- A、
scanf(“%c”,ch);
- B、
scanf(“%c”,&ch);
- C、
printf(“%c”,ch);
- D、
printf(“%c”,&ch);
正确答案: B
15
2.15语句 printf(“%.1f,%d\n”,10./4,10/8); 的输出是________。
- A、
2.5,1.25
- B、
2.5,1
- C、
1,1.25
- D、
2,1.25
正确答案: B
16
2.16 下列语句段的运行结果是________。
int a=1234;float x=56.789;
printf(“%3d,%4.2f\n”,a,x);
- A、
1234,56.79
- B、
1234 56.79
- C、
1234,56.789
- D、
1234 56.789
正确答案: A
17
2.17 如果要在屏幕上输出字符串“a%b=a\b”,则以下________printf 语句能正确输出字符串。
- A、
printf(“a%b=a\b”);
- B、
printf(“a%%b=a\\b”);
- C、
printf(“%a%b=%a\%b”);
- D、
printf(“%a%%b=%a\\%b”);
正确答案: B
18
2.18下列的________不是 C 语言的算术运算符。
- A、
+
- B、
%
- C、
=
- D、
–
正确答案: C
19
2.19若变量已正确定义并赋值,以下________表达式不符合 C 语言语法。
- A、
a*b/c
- B、
3.14%2
- C、
2,b
- D、
a/b/c
正确答案: B
20
2.20C 语言中的运算对象必须是整型的运算符是________。
- A、
/
- B、
=
- C、
>=
- D、
%
正确答案: D
21
2.21当 x=2.5,a=7,y=5.2,求算术表达式x+a%3*(int)(x+y)%2 的值为________。
- A、
2.0
- B、
2.5
- C、
3.0
- D、
3.5
正确答案: D
22
2.22 执行以下程序段后,c3 的值是________。
int c1=1,c2=2,c3;
c3=c1/c2;
- A、
0
- B、
2
- C、
0.5
- D、
1
正确答案: A
23
2.23设 int n,m; 使m 为n 的十进制百位数的语句是________。
- A、
m = n/100;
- B、
m = n%100;
- C、
m = n/100%10;
- D、
m = n%10/100;
正确答案: C
24
2.24 设有定义 char c;且c 表示一个小写字母,将小写字母转换为对应大写字母的表达式是________。
- A、
c – a + A
- B、
c – A + a
- C、
c – ‘a’ + ‘A’
- D、
c – ‘A’ + ‘a’
正确答案: C
25
2.25设有定义:int a=15; 则执行语句:a/=a+a; 后a 的值是________。
- A、
0
- B、
1
- C、
0.5
- D、
16
正确答案: A
26
2.26下列________不是 C 语言的关系运算符。
- A、
>=
- B、
<=
- C、
=
- D、
!=
正确答案: C
27
2.27下列的________不是 C 语言的逻辑运算符。
- A、
!
- B、
&&
- C、
&
- D、
||
正确答案: C
28
2.28设有变量定义inti,j;与表达式i==0&&j==0等价的表达式是________。
- A、
i||j
- B、
!i&&!j
- C、
!i==!j
- D、
i==j
正确答案: B
29
2.29设 int n; 判断“n 为0”的表达式是________。
- A、
n=0
- B、
n!=0
- C、
!(n=0)
- D、
n==0
正确答案: D
30
2.30设有定义 int a;判断a 是一个偶数的表达式是________。
- A、
a==2*n
- B、
a/2==0
- C、
a%2=0
- D、
a%2==0
正确答案: D
31
2.31以下关于 C 语言逻辑真假的描述中,正确的是________。
- A、
逻辑真用true 表示,逻辑假用false 表示
- B、
逻辑真用yes 表示,逻辑假用no 表示
- C、
逻辑真用1 表示,逻辑假用0 表示
- D、
表达式(1+2)的逻辑值既不是真,也不是假
正确答案: C
32
2.32能正确表示逻辑关系:“a≥10 或a≤0”的C 语言表达式是________。
- A、
a>=10 | a<=0
- B、
a>=10 && a<=0
- C、
a>=10 || a<=0
- D、
a>=10 or a<=0
正确答案: C
33
2.33下列运算符中运算优先级最高的是________。
- A、
*(乘号)
- B、
!(逻辑非)
- C、
&&(逻辑与)
- D、
>=(大于等于)
正确答案: B
34
2.34 设 a=3,b=4,c=5,执行!(x=a)&&(y=b)&&0 逻辑表达式后,变量x 和y 的值为________。
- A、
3、4
- B、
x 和y 中的值不确定
- C、
3、不确定
- D、
不确定、4
正确答案: C
35
2.35设有定义inta=5,b;赋值使b为9的语句是________。
- A、
b=++a+4;
- B、
b=(a++)+3;
- C、
b=8+!(a==5);
- D、
b=(a++==6)?8:9;
正确答案: D
36
2.36执行以下语句的结果为________。
y=10;x=y++;
- A、
x=10,y=10
- B、
x=11,y=11
- C、
x=10,y=11
- D、
x=11,y=10
正确答案: C
答案解析:
37
2.37设有 char ch; 判断“ch 为数字字符”的表达式是________。
- A、
ch>=’0′ && ch<='9'
- B、
ch>0 && ch<9
- C、
ch>=’0′ || ch<='9'
- D、
ch>=0 || ch<=9
正确答案: A
38
2.38设有 int n; 则判断“n 为二位数正整数”的表达式是________。
- A、
10<=n<=99
- B、
10<=n || n<=99
- C、
10<=n, n<=99
- D、
10<=n && n<=99
正确答案: D
39
2.39若变量已正确定义并赋值,符合 C 语言语法的表达式是________。
- A、
a=a+7;
- B、
a=7+b+c,a++
- C、
int(12.3%4)
- D、
a=a+7=c+b
正确答案: B
40
2.40 设变量 x,y,a,b,c,d 的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y 的值分别是_______。
- A、
0,0
- B、
0,1
- C、
1,0
- D、
1,1
正确答案: B
41
2.41与表达式:!a ? 10 : 20 等价的表达式是________。
- A、
a==0 ? 10 : 20
- B、
a!=0 ? 10 : 20
- C、
a!=1 ? 10 : 20
- D、
a ? 10 : 20
正确答案: A
42
2.42设有定义语句:char c1=92, c2=92;则以下表达式中值为零的是________。
- A、
c1^c2
- B、
c1&c2
- C、
c1~c2
- D、
c1|c2
正确答案: A
43
2.43表达式 10 & 12 和10 ^ 12 的计算结果分别是________。
- A、
8 和14
- B、
8 和6
- C、
14 和8
- D、
6 和8
正确答案: B
44
2.44在位运算中,操作数每右移一位,其结果相当于________。
- A、
操作数乘以2
- B、
操作数乘以4
- C、
操作数除以2
- D、
操作数除以4
正确答案: C
45
2.45在位运算中,操作数每左移一位,其结果相当于________。
- A、
操作数乘以2
- B、
操作数除以2
- C、
操作数乘以4
- D、
操作数除以4
正确答案: A
46
2.46设整数n的值为十进制-8,以16位二进制存贮该数时,其编码是________。
- A、
0000000000001000
- B、
1000000000001000
- C、
1111111111110111
- D、
1111111111111000
正确答案: D
47
2.47设 int n=-1; 则n 在内存中的16 位编码是________。
- A、
1111 1111 1111 1111
- B、
1000 0000 0000 0001
- C、
1111 1111 1111 1110
- D、
0000 0000 0000 0000
正确答案: A
48
2.48求“abc\\12\n”字符串的长度________。
- A、
5
- B、
6
- C、
7
- D、
8
正确答案: C
49
2.49在 C 中,char 类型数据在内存的存储形式是________。
- A、
原码
- B、
反码
- C、
补码
- D、
ASCII 码
正确答案: D
50
2.50设有定义 float x=3.567,y; 赋值使y 为3.6 的语句是________。
- A、
y = (int)(10*x+0.5)/10.0;
- B、
y = (int)(10*x)/10.0;
- C、
y = (int)(10*x)/10.0 + 0.5;
- D、
y = (%3.1f) x;
正确答案: A
二.填空题
2-1设floatx,y;使y为x的小数部分的表达式是________。
正确答案:
第一空:
y=x-(int)x
2-2要表示关系x≤y≤z,正确的C语言表达式是________。
正确答案:
第一空:
(y>=x)&&(y<=z);x<=y&&y=x&&y<=z;(x<=y)&&(y<=z);y=x;(y=x)
2-3设inti,a;则执行语句:i=(a=2*3,a*5),a+6;后,变量i的值是________。
正确答案:
第一空:
30
2-4设inta=0,b=0,c=0;则执行语句:x=(a=50)&&(b=0)&&(c=100);后,变量c的值是________。
正确答案:
第一空:
0
2-5已知字母A的ASCII码值为十进制65,下面的程序输出的是________。
#include
intmain(void)
{
charc1,c2;
c1=’A’+’5′-‘3’;
c2=’A’+’6′-‘3’;
printf(“%d,%c”,c1,c2);
return0;
}
正确答案:
第一空:
67