c语言专科期末测试题及答案(夺冠系列).docxVIP

  • 0
  • 0
  • 约6.5千字
  • 约 13页
  • 2026-01-30 发布于山东
  • 举报

c语言专科期末测试题及答案(夺冠系列).docx

c语言专科期末测试题

第一部分单选题(50题)

1、若inta[5];执行a[0]=1;a[1]=2;则a[2]的值是?()

A.0

B.3

C.随机值

D.无定义

【答案】:答案解析:全局数组默认0,局部数组未初始化是随机值?题目未说明存储类别,通常默认全局,a[2]=0,故选A。

2、函数参数为数组时,形参的写法错误的是?()

A.inta[]

B.int*a

C.inta[5]

D.inta

【答案】:答案解析:D中inta是普通变量,不能接收数组名(地址),A、B、C均正确,故选D。

3、表示“x大于5且小于10”的合法C语言表达式是?()

A.5x10

B.x5||x10

C.x5x10

D.x5x10

【答案】:答案解析:逻辑与用,逻辑或用||,A是连续比较语法错误,是按位与,故选C。

4、二维数组a[3][4]的元素个数是?()

A.7

B.12

C.3

D.4

【答案】:答案解析:3行4列,共3×4=12个元素,故选B。

5、以下if-else语句中,代码块执行顺序正确的是?()

A.先执行if条件,满足则执行if代码块,否则执行else代码块

B.先执行else代码块,再执行if条件

C.同时执行if和else代码块

D.仅执行else代码块

【答案】:答案解析:if-else逻辑为“条件判断→满足执行if,否则执行else”,互斥执行,故选A。

6、以下哪个数据类型的占用字节数最大?()

A.char

B.short

C.int

D.double

【答案】:答案解析:char(1字节)、short(2字节)、int(4字节)、double(8字节),故选D。

7、函数定义在main函数之后时,必须先?()

A.调用函数

B.声明函数

C.定义函数

D.无要求

【答案】:答案解析:main函数调用其他函数时,若函数定义在main之后,需先声明(否则编译器找不到函数),故选B。

8、以下函数定义中,参数为指针的是?()

A.voidfun(int*a){printf(%d,*a);}

B.voidfun(inta){printf(%d,a);}

C.voidfun(inta[]){printf(%d,a[0]);}

D.A和C

【答案】:答案解析:A是指针参数,C数组名参数本质是指针,B是值参数,故选D。

9、以下switch语句中,default的作用是?()

A.匹配所有case

B.匹配除case外的所有情况

C.终止switch语句

D.无实际作用

【答案】:答案解析:default用于匹配所有case未覆盖的情况,可选且位置灵活,故选B。

10、若inta[5]={1,2,3,4,5};则a[5]是?()

A.5

B.0

C.越界访问

D.无定义

【答案】:答案解析:a[5]下标超出0-4范围,属于越界访问(可能导致程序错误),故选C。

11、若intx=5;执行if(x3x7)printf(yes);elseprintf(no);输出结果是?()

A.yes

B.no

C.yesno

D.无输出

【答案】:答案解析:x=53且7,条件为真,输出yes,故选A。

12、以下二维数组定义正确的是?()

A.inta[2][3];

B.inta[2][];

C.inta[][3]={1,2,3,4,5,6};

D.inta[2][3]={1,2,3,4,5,6,7};

【答案】:答案解析:B第二维不能省略,C第一维可省略(自动计算为2),D初始化元素超6个(2×3=6),A标准定义正确,故选A。

13、预处理命令#definePI3.14159的作用是?()

A.定义变量

B.定义常量

C.函数声明

D.包含头文件

【答案】:答案解析:#define是宏定义,用于定义常量(无分号,直接替换),故选B。

14、以下关于函数参数的说法正确的是?()

A.形参是函数定义时的变量

B.实参是函数调用时的变量/常量

C.形参和实参类型需匹配

D.以上都正确

【答案】:答案解析:A、B、C均是函数参数的基本规则,故选D。

15、以下if语句中,逻辑非运算符使用正确的是?()

A.if(!x)printf(yes);

B.if(!x==0)printf(yes);

C.if(!(x0))printf(yes);

D.A和C

【答案】:答案解析:!x表示“x为假(0)”,!(x0)表示“x不大于0”,均正确;B中!x==0等价于x!=0,逻辑不同,故选D。

16、以下if语句的语法正确的是?()

A.if(x0){printf(a);elseprintf(b);}

B.if(x0)printf

文档评论(0)

1亿VIP精品文档

相关文档