前排温馨提醒:善用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