C语言上机题库百科园第3章!南信大! 下载本文

内容发布更新时间 : 2024/5/20 12:45:15星期一 下面是文章的全部内容请认真阅读。

18.语句while(!E);中的表达式!E等价于()。 A.E!=1 B.E= =0 C.E==1 D.E!=0

19.以下程序段的输出结果是

int x= 3; do

{ pritnf(“=”, x-=2); } while (!(--x));

A.死循环 B.1 -2 C.3 0 D.1

20.以下程序的运行结果是()。 main() {

int i=1,sum=0;

while(i<10) sum=sum+1;i++; printf(\}

A.i=10,sum=9 B.运行出现错误 C.i=2,sum=1 D.i=9,sum=9

21.设有定义:int a=1,b=2,c=3;以下语句中执行效果与其它三个不同的是() A.if(a>b){ c=a,a=b,b=c;} B.if(a>b) c=a,a=b,b=c; C.if(a>b){ c=a;a=b;b=c;} D.if(a>b) c=a;a=b;b=c;

22.以下程序中,while循环的循环次数是______ main() {

int i=0; while(i<10) {

if(i<1) continue;

if(i==5) break; i++; } }

A.死循环,不能确定次数 B.6 C.4 D.1

23.选择结构中的条件与循环结构中循环成立的条件, 在写法上可以是任一表达式,但其值只能被判断为“真”或“假”。 哪个数作为逻辑“假”值()。 A.-1

B.非零的数 C.1 D.0

24.int a=1,b=2,c=3; if(a>b)a=b; if(a>c)a=c; 则a的值为()。 A.1

B.不一定 C.3 D.2

25.有以下程序,若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是( ) #include int main() {

int m,n,p;

scanf(\printf(\return 0; }

A.m=123 n=456 p=789 B.m=123n=456p=789 C.123 456 789 D.m=123,n=456,p=789

26.有以下程序

main() {

int i=1,j=1,k=2; if((j++||k++)&&i++)

printf(\\n\); }

执行后输出结果是 A.2,2,2 B.2,2,3 C.1,1,2 D.2,2,1

27.以下程序段的输出结果为()。 for(i=4;i>1;i--) for(j=1;j

28.有如下程序

main() {

float x=2.0,y; if(x<0.0)y=0.0;

else if(x<10.0)y=1.0/x;

else y=1.0;

printf(\\n\);}

该程序的输出结果是 A.0.500000 B.0.250000 C.1.000000 D.0.000000

29.判断两个字符串是否相等,正确的表达方式是 A.while(s1=s2) B.while(s1= =s2)

C.while(strcmp(s1,s2)=0) D.while(strcmp(s1,s2)= =0)

30.若x是int类型变量,以下程序段的输出结果是

for(x = 3; x < 6; x++)

printf( (x%2)?(“**%d”):(“##%d\\n”),x);

A.

B.

C.

D.

31.C语言中,switch后的括号内表达式的值可以是 A.只能为整型和字符型 B.只能为整型 C.任何类型

D.只能为整型,字符型,枚举型

32.设j和k都是int类型,则下面的for循环语句()。 for(j=0,k=0;j<=9&&k!=876;j++) scanf(\A.最多执行9次

B.循环体一次也不执行 C.最多执行10次 D.是无限循环

33.int a=3,b=2,c=1; if(a>b>c)a=b; else a=c; 则a的值为()。 A.2 B.3 C.1 D.0

34.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else总与( )配对

A.同一行上的if B.其之后最近的if

C.其之前最近的未配对的if D.缩排位置相同的if

35.以下不正确的if语句形式是()。 A.if(xy&&x!=y);

C.if(x==y) x+=y;

D.if(x!=y) scanf(\

36.结构化程序设计所规定的三种基本控制结构是()。 A.树形、网形、环形 B.输入、处理、输出 C.主程序、子程序、函数 D.顺序、选择、循环

37.以下程序的输出结果是

main()

{ int y = 10

for(; y > 0; y --) if(y % 3 == 0)

{ pritnf(“%d”, --y); continue; } }

A.741 B.963 C.875421 D.852

38.以下程序的执行结果是main() { int x = 0, s = 0;

while( !x != 0 ) s += ++x; printf( \A..无限循环 B.0 C.1

D.语法错误

39.int a=1,b=2,c=3; if(a>c)b=a;a=c;c=b;则c的值为()。 A.3 B.2

C.不一定 D.1

40.以下叙述正确的是()。

A.do-while语句构成的循环不能用其它语句构成的循环来代替. B.用do-while语句构成的循环,在while后的表达式为零时结束循环 C.用do-while语句构成的循环,在while后的表达式为非零时结束循环. D.do-while语句构成的循环只能用break语句退出.