C语言第二章习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.以下叙述中错误的是( )。

A) 使用三种基本结构构成的程序只能解决简单问题

B) 结构化程序由顺序、分支、循环三种基本结构组成

C) C语言是一种结构化程序设计语言

D) 结构化程序设计提倡模块化的设计方法

2.以下可以将任意一个两位整数n的个位数与十位数对换的表达式为()

A) (n-n/10*10)*10+n/10

B) n-n/10*10+n/10

C) n/10+(n-n/10)

D) (n-n/10)*10+(n/10)

3.以下叙述中错误的是

A) 算法正确的程序可以有零个输入

B) 算法正确的程序最终一定会结束

C) 算法正确的程序可以有零个输出

D) 算法正确的程序对于相同的输入一定有相同的结果

4.若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) : (y

++)中的条件表达式(x-y) 等价的是( )。

A) (x-y<0||x-y>0)

B) (x-y<0)

C) (x-y>0)

D) (x-y==0)

5.有以下程序

#include

main()

{ int a;

a = (int)1.99*3;

printf("%d\n", a);

}

程序的运行结果是()

A) 3

B) 5

C) 6

D) 结果不确定

6.请选出合法的C语言赋值语句:()

A) a=b=58 B) i++;

C) a=58,b=58 D) k=int(a+b)

7.假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表

示代数式 1/abc 的表达式是:()

A) 1/a*b*c

B) 1/(a*b*c)

C) 1/a/b/(float)c

D) 1.0/a/b/c

8.请选出以下语句的输出结果:()

printf("%d\n",strlen("\t\"\065\xff\n"));//srelen()为求字符串长度的函数,返回字节数。

A) 5 B) 14 C) 8 D) 输出项不合法,无正常输出

9.请选出以下语句的输出结果:()

printf("%d\n",strlen("\xffff"));

A) 1 B) 2 C) 3 D)5

10.有如下程序段,其输出结果是什么:(表示输出回车符)()main( )

{int a=1,b=3,c=5;

if (c=a+b)

printf ("yes\n");

elseprintf("no\n"); }

A) yes B) no C) yes\n D) no\n

11. 以下说法中正确的是( )

A) C语言程序总是从第一个的函数开始执行

B) 在C语言程序中,要调用的函数必须在main()函数中定义

C) C语言程序总是从main()函数开始执行

D) C语言程序中的main()函数必须放在程序的开始部分

12.逻辑运算符两侧运算对象的数据类型()

A) 只能是0和1

B) 只能是0或非0正数

C) 只能是整型或字符型数据

D) 可以是任何类型的数据

13. 以下叙述中错误的是()

A)C语句必须以分号结束

B)复合语句在语法上被看作一条语句

C)空语句出现在任何位置都不会影响程序运行

D)赋值表达式末尾加分号就构成赋值语句

14.已知a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a>b)&&(n=c

A) 2

B) 0

C) 1

D) -1

15.设变量已正确定义并赋值,以下正确的表达式是( )

A) x=y+z+5,++y

B) int(15.8%5)

C) x=y*5=x+z

D) x=25%5.0

16.若有定义语句:int x=10;,则表达式x-=x+x的值为( )

A) 0

B) -20

C) -10

D) 10

17.有以下程序

#include

main( )

{ int c, d;

c = 10^3;

d = 10+3;

printf("%d,%d\n", c, d);

}

程序运行后的输出结果是()

A) 13,13

B) 9,13

C) 10,13

D) 103,13

18.若有定义:int a=7;float x=2.5,y=4.7;则表达式:x+a%3*(int)(x+y)%2/4的值是:()

A)2.500000

B)2.7500000

C)3.500000

D)0.000000

19.已知x=43,ch=’A’,y=0,则表达式(x>=y&&ch<’B’&&!y)的值是:()

A)0

B)语法错误

C)1

D)”假”

20. 若有以下定义和语句:

Inta,b;

printf(“%d”,(a=2)&&(b=-2));

则输出的结果是()

A)无输出 B)结果不确定 C)1 D)-1

21. 以下语句的输出结果是()

int a=2,b=3;

printf(a>b?”***a=%d”:”###b=%d”,a,b);

A)输出结果格式错误 B)***a=2

C)###b=2 D)###b=3

22. 下列运算符中,结合方向为自左向右的是()

(A)?:(B),(C)+ = (D)+ +

23. 设x、y、z均为int型变量,则执行以下语句后,x、y、z的值为()

x=1;y=0;z=2; y++&&++z||++x;

A)2、1、3 B)2、0、3 C)2、1、3 D)2、1、2

24.若有以下定义和语句:

int y=10;

y+=y-=y-y;

则y的值是()

A)10 B)20 C)30 D)40

相关文档
最新文档