一个有用的网站O(∩_∩)O

智慧树知到《计算机程序设计(C语言)》章节测试答案

智慧树知到《计算机程序设计(C语言)》章节测试答案


第一章

1、一个C程序可以有( )个主函数。

A:1

B:2

C:3

D:多个

答案: 1

2、C语言是函数式的语言。

A:对

B:错

答案: 对

3、C语言是高级语言。

A:对

B:错

答案: 对

4、Visual C++不支持C语言。

A:对

B:错

答案: 错

5、C语言是编译式的语言。

A:对

B:错

答案: 对

第二章

1、double x;scanf(“%lf”,&x);不可以赋值给x变量的常量是(   ).

A:123

B:100000

C:A’

D:”abc”

答案: “abc”

2、下列程序段的输出结果为().float x=213.82631;

printf(“%3d”,(int)x);

A:213.82

B:213.83

C:213

D:3.8

答案: 213

3、下列程序的输出结果是().

main()

{char c1=97,c2=98;

printf(“%d %c”,c1,c2);

}

A:97 98

B:97 b

C:a 98

D:a b

答案: 97 b

4、以下标识符中,不能作为合法的C用户定义标识符的是(  ).

A:a3_b3

B:void

C:_123

D:IF

答案: void

5、以下标识符中,不能作为合法的C用户定义标识符的是(  ).

A:answer

B:to

C:signed

D:_if

答案: signed

第三章

1、逻辑运算低于关系运算.

A:对

B:错

答案:

2、x=y+8 等价于 x=x(y+8).

A:对

B:错

答案:

3、关系运算高于算术运算.

A:对

B:错

答案:

4、若 a=3,b=2,c=1 则关系表达式”(a>b)==c” 的值为”真”.

A:对

B:错

答案:

5、若给定条件表达式(M)?(a++):(a–),则其中表达式M(  ).

A:和(M==0)等价

B:和(M==1)等价

C:和(M!=0)等价

D:和(M!=1)等价

答案:

第四章

1、结构化程序设计所规定的三种基本控制结构是(  ).

A:输入、处理、输出

B:树形、网形、环形

C:顺序、选择、循环

D:主程序、子程序、函数

答案:

2、C语言中用于结构化程序设计的三种基本结构是(  ).

A:顺序结构、选择结构、循环结构

B:if、switch、break

C:for、while、do-while

D:if、for、continue

答案:

3、int a=7,b=9,t;t=(a>b)?a:b;t的值为7.

A:对

B:错

答案:

4、赋值语句中的赋值运算符的左侧只能是唯一的变量。

A:对

B:错

答案:

5、int a=10;printf(“%d”,a++);输出11.

A:对

B:错

答案:

第五章

1、在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式(  ).

A:只能用逻辑表达式

B:只能用关系表达式

C:只能用逻辑表达式或关系表达式

D:可用任意表达式

答案:

2、int a=3,b=2,c=1;

if(a>b>c)a=b;

else a=c;

则a的值为(  ).

A:3

B:2

C:1

D:0

答案:

3、a=1;b=2;c=3;

if(a<c) b=a;a=c;c=b;则c的值为(  )

A:1

B:2

C:3

D:0

答案:

4、以下不正确的if语句形式是(  ).

A:if(x>y&&x!=y);

B:if(x==y) x+=y;

C:if(x!=y) scanf(“%d”,&x) else scanf(“%d”,&y);

D:if(x<y) {x++;y++;}

答案:

5、下面程序的输出结果是main()

{int x,y,z;

x=1;y=2;z=3

if(x>y)

if(x>z) printf(“%d”,x);

else printf(“%d,y);

printf(“%dn”,z);

}

A:3

B:13

C:23

D:无输出

答案:

第六章

1、选择结构中的条件与循环结构中循环成立的条件,

在写法上可以是任一表达式,但其值只能被判断为”真”或”假”.

哪个数作为逻辑”假”值(  )

A:-1

B:1

C:非零的数

D:0

答案:

2、以下程序的运行结果是(  ).

main()

{  int n;

for(n=1;n<=10;n++)

{

if(n%3==0) continue;

printf(“%d”,n);

}

}

A:12457810

B:369

C:12

D:1234567890

答案:

3、C语言中 while 和 do-while 循环的主要区别是(  ).

A:do-while 的循环体至少无条件执行一次

B:while的循环控制条件比 do-while的循环控制条件更严格

C:do-while 允许从外部转到循环体内

D:do-while 的循环体不能是复合语句

答案:

4、以下叙述正确的是(  ).

A:do-while语句构成的循环不能用其它语句构成的循环来代替.

B:do-while语句构成的循环只能用break语句退出.

C:用do-while语句构成的循环,在while后的表达式为非零时结束循环.

D:用do-while语句构成的循环,在while后的表达式为零时结束循环

答案:

5、语句while(!E);中的表达式!E等价于(  ).

A:E==0

B:E!=1

C:E!=0

D:E==1

答案:

第七章

1、static char str[10]=”China”;数组元素个数为(  ).

A:5

B:6

C:9

D:10

答案:

2、在C语言中,一维数组的定义方式为:类型说明符数组名(  ).

A:[常量表达式]

B:[整型表达式]

C:[整型常量]或[整型表达式]

D:[整型常量]

答案:

3、若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是(  ).

A:2

B:3

C:4

D:无确定值

答案:

4、如果有一个字符串,其中第十个字符为’n’,则此字符串的有效字符为9个.

A:对

B:错

答案:

5、若有

char s1[]=”abc”,s2[20],*t=s2;gets(t);

则下列语句中能够实现当字符串s1大于字符串s2时,输出s2的语句是(  ).

A:if(strcmp(s1,s1)>0)puts(s2);

B:if(strcmp(s2,s1)>0)puts(s2);

C:if(strcmp(s2,t)>0)puts(s2);

D:if(strcmp(s1,t)>0)puts(s2);

答案:

第八章

1、下列定义不正确的是(  ).

A:#define PI 3.141592

B:#define S345

C:int max(x,y);  int x,y; {  }

D:static char c;

答案:

2、以下程序的输出结果为(  ).

main()

{int a=1,b=2,c=3,d=4,e=5;

printf(“%dn”,func((a+b,b+c,c+a),(d+e)));

}

int  func(int  x,int y)

{

return(x+y);

}

A:15

B:13

C:9

D:函数调用出错

答案:

3、下列程序运行结果为: (  )

#define  P  3

#define  S(a)   Paa

main()

{int  ar;

ar=S(3+5);

printf(“n%d”,ar);

}

A:192

B:29

C:27

D:25

答案:

4、以下函数调用语句中实参的个数是().

func((e1,e2),(e3,e4,e5));

A:2

B:3

C:5

D:语法错误

答案:

5、以下函数调用语句中实参的个数是().

exce((v1,v2),(v3,v4,v5),v6);

A:3

B:4

C:5

D:6

答案:

第九章

1、对结构体类型的变量的成员可以象普通变量一样参与各种运算.

A:对

B:错

答案:

2、static struct {int a1;float a2;char a3;}a[10]={1,3.5,’A’};

说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存储方式,其中被初始化的下标变量是(  ).

A:a[1]

B:a[-1]

C:a[0]

D:a[10]

答案:

3、共用体类型变量不能被初始化.

A:对

B:错

答案:

4、union u

{

char ch;

int i;

float f;

};

定义了共用体变量.

A:对

B:错

答案:

5、对枚举类型名的定义enum a {sum=9,mon=-1,tue};是正确的.

A:对

B:错

答案:

第十章

1、若有int p,a; p=&a,下列说法不正确的是(  ).

A:&p==&a

B:&a==a

C:(p)++==a++

D:*(p++)==a++

答案:

2、若有下列定义,则对a数组元素地址的正确引用是(  ).

int a[5],*p=a;

A:&a[5]

B:p+2

C:a++

D:&a

答案:

3、若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是(  ).

A:&t[3][2]

B:t[3]

C:&t[1]

D:t[2]

答案:

4、若有下列定义,则对a数组元素地址的正确引用是(  ).

int a[5],p=a;

A:(p+5)

B:p+2

C:(a+2)

D:*&a[5]

答案:

5、char h,s=&h;可将字符H通过指针存入变量h中的语句是(  ).

A:s=H;

B:*s=’H’;

C:s=H;

D:s=’H’

答案:

老友网www.andlaou.com免费为你分享