西北工业大学c语言程序设计机考考试答案,西北工业大学19秋《C语言程序设计》机考(满分)...

试卷总分:100 得分:96

一、 单选题 (共 35 道试题,共 70 分)

1. 若变量已正确定义,有以下程序段

i=0;

do printf("%d,",i);while(i++);

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

其输出结果是( )。

A.0,0

B.0,1

C.1,1

D.程序进入无限循环

正确答案:B

2.{设有以下程序段int x=0,s=0; while(!x!=0) s+=++x; printf("%d",s); 则(

)。

A.运行程序段后输出0

B.运行程序段后输出1

C.程序段中的控制表达式是非法的

D.程序段执行无限次

正确答案:B

3. 函数的功能是交换变量x和y中的值,且通过正确调用返回交换的结果。能正确执行此功能的函数是( )。

A.funa(int *x, int *y)

{ int *p;

*p=x; *x=*y; *y=*p;

}

B.funb(int x, int y)

{ int t;

t=x; x=y; y=t;

}

C.func(int *x, int *y)

{ *x=*y; *y=*x;

}

D.{fund(int *x, int *y)

正确答案:D

4. 对for(表达式1; ; 表达式3)可理解为( )。

A.for(表达式1; 0;表达式3)

B.for(表达式1: 1 ;表达式3)

C.for(表达式1; 表达式1; 表达式3)

D.for(表达式1; 表达式2; 表达式3)

正确答案:

5. 以下描述错误的是( )。

A.break语句不能用于循环语句和switch语句外的任何其他语句

B.在switch语句中使用break语句或continue语句的作用相同

C.在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环

D.在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环

正确答案:

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

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

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

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

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

正确答案:

7. 已知double *p[6]; 它的含义是( )。

A.p是指向double类型变量的指针

B.p是double类型数组

C.p是指针数组

D.p是数组指针

正确答案:

8. C语言程度的基本单位是( )。

A.函数

B.标识符

C.表达式

D.语句

正确答案:

9. 设有说明语句: char a='\72';则变量a( )。

A.包含1个字符

B.包含2个字符

C.包含3个字符

D.说明不合法

正确答案:

10. 下面程序的输出结果是( )。

main()

{

int x=10;

x+=(x=8);

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

}

A.10

B.8

C.18

D.16

正确答案:

11. 在C语言中,逻辑值"真"是用( )表示的。

A.预定义为真值的宏

B.非零数

C.正数

D.非零整数

正确答案:

12. 在while(x)语句中的x与下面条件表达式等价的是( )。

A.x==0

B.x==1

C.x!=1

D.x!=0

正确答案:

13. 已知int **p; 则变量p是( )。

A.指向int的指针

B.指向指针的指针

C.int型变量

D.以上3种说法均是错误的

正确答案:

14. 以下不构成无限循环的语句或语句组是( )。

A.n=0;

do{++n;}while(n<=0);

B.n=0;

while(1){n++;}

C.n=10;

while(n);{n--;}

D.for(n=0,i=1; ;i++)n+=i;

正确答案:

15. 下面各选项中,均是C语言合法标识符的选项组是( )。

A.33 we auto

B._23 me _3ew

C._43 3e_ else

D.ER -DF 32

正确答案:

16. 当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是( )。

A.c=b=a;

B.(a=c)︱︱(b=c);

C.(a=c)&&(b=c);

D.a=c=b;

正确答案:

17.

在C语言中,设一表达式中包含有int,long,char和unsigned类型的变量和数据,则这4种类型数据转换的规则是(

)。

A.int→unsingned→long→char

B.char→int→long→unsingned

C.char→int→unsigned→long

D.int→char→unsigned→long

正确答案:

18. 说明语句int *(*p)(); 的含义是( )。

A.p是一个指向int型数组的指针

B.p是指针变量,它构成了指针数组

C.p是一个指向函数的指针,该函数的返回值是一个整型

D.p是一个指向函数的指针,该函数的返回值是一个指向整型的指针

正确答案:

19. 若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是( )。

A.a[2][!1]

B.a[2][3]

C.a[0][3]

D.a[1>2][!1]

正确答案:

20. 下列不正确的字符串常量是( )。

A.'ABC'

B."W'"

C."SDF/3"

D." "

正确答案:

21. 以下错误的描述为( )。

A.在函数之外定义的变量称为外部变量,外部变量是全局变量

B.在一个函数中既可以使用本函数中的局部变量,又可以使用外部变量

C.外部变量定义和外部变量声明的含义相同

D.若在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量不起作用

正确答案:

22. 下面程序的输出结果是( )。

main()

{

int x=177;

printf("%o\n",x);

A.177

B.261

C.-61

D.61

正确答案:

23. 在C语言中,变量的隐含存储类别是( )。

A.auto

B.static

C.extern

D.无存储类别

正确答案:

24. 已知字符′A′的ASCII码值是65,字符变量cl的值是′A′,c2

的值是′D′。执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )。

A.A,B

B.A,68

C.65,66

D.65,68

正确答案:

25. 一个C程序的执行是从( )。

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C.本程序的main函数开始,到本程序文件的最后一个函数结束

D.本程序文件的第一个函数开始,到本程序main函数结束

正确答案:

26. 在C语言中,运算对象必须是整型数的运算符是( )。

A.%

B.\

C.%和\

D.**

正确答案:

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

A.改变函数形参的值,不会改变对应实参的值

B.函数可以返回地址值

C.可以给指针变量赋一个整数作为地址值

D.当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL

正确答案:

28. 若int i, x; 则for(i=x=0; i<9&&x!=5; i++,

x++)控制的循环体将执行( )次。

A.10

B.9

C.5

D.6

正确答案:

29. 以下描述中正确的是( )。

A.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句

B.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号

C.在do-while循环体中,是先执行一次循环,再进行判断

D.do-while循环中,根据情况可以省略while

正确答案:

30. 若二维数组a由m列,则在a[i][j]之前的元素个数为( )。

A.j*m+i

B.i*m+j

C.i*m+j-1

D.i*m+j+1

正确答案:

31. 有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是 ( )。

A.gets(&s[0]);

B.scanf("%s",s+1);

C.gets(s);

D.scanf("%s",s[1]);

正确答案:

32. 以下对C语言函数的有关描述中,正确的是( )。

A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参

B.C函数既可以嵌套定义又可以递归调用

C.函数必须有返回值,否则不能使用函数

D.函数必须有返回值,返回值类型不定

正确答案:

33. 设有: int a=1,b=2,c=3,d=4,m=2,n=2; 执行

(m=a>b)&&(n=c>d)后,n的值是 ( )。

A.1

B.2

C.3

D.

正确答案:

34. 阅读下列程序,则运行结果为( )。

#include "stdio.h"

fun()

{ static int x=5;

x++;

return x;\

A.5

B.6

C.7

D.8

正确答案:

35. 有如下程序

main()

{ int x=3;

do

{

printf("%d",x--);

}while(!x);

}该程序的执行结果是( )。

A.3 2 1

B.2 1 0

C.3

D.2

正确答案:

二、 判断题 (共 15 道试题,共 30 分)

1. 若a和b类型相同,在执行了语句a=b后,b中的值将放入a中,b中的值不变。

A.错误

B.正确

正确答案:

2. 一个可执行的C语言程序总是从main()函数的入口地址处开始执行。

A.错误

B.正确

正确答案:

3. 若要"为读/写建立一个新的文本文件",在fopen函数中应使用的文件方式为"w+"。

A.错误

B.正确

正确答案:

4. C语言中规定,if语句的嵌套结构中,else总是和最近的if配对。

A.错误

B.正确

正确答案:

5. 若一个外部变量的定义形式为static int x;其中static的作用是使x只能在本文件内引用。

A.错误

B.正确

正确答案:

6. 已有定义int(*p)();指针p可以指向函数的入口地址。

A.错误

B.正确

正确答案:

7. 用typedef可以定义各种类型名,但不能用来定义变量。

A.错误

B.正确

正确答案:

8. C语言程序中,一个文件中的函数可以引用存储在另一个文件中的函数和变量。

A.错误

B.正

正确答案:

9.题型:判断题

A.错误

B.正确

正确答案:

10. 一个共用体变量中不能同时存放其所有成员。

A.错误

B.正确

正确答案:

11. 在 C 语言中,"A "和' A '等价。

A.错误

B.正确

正确

12. 两个字符串所包含的字符个数相同时才能比较字符串大小。

A.错误

B.正确

正确答案:

13. C语言规定形参可以是常量、变量或表达式,只要与其对应的实参类型一致即可。

A.错误

B.正确

正确答案:

14. 在C 程序中,逗号运算符的优先级最低。

A.错误

B.正确

正确答案:

15. 逻辑表达式 'C'&&'d' 的值为 1。

A.错误

B.正确

2026907897 需完整答案,可以联系

,优惠

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值