数组c语言考试题库(word).docxVIP

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

数组c语言考试题库

第一部分单选题(50题)

1、以下函数声明错误的是?()

A.voidfun(int);

B.voidfun(inta);

C.voidfun(inta,intb);

D.voidfun(inta;intb);

【答案】:答案解析:函数声明中参数用逗号分隔,不能用分号,D语法错误,故选D。

2、C语言中基本数据类型不包括以下哪项?()

A.char

B.int

C.float

D.array

【答案】:答案解析:基本数据类型为char、int、float、double,array是数组(构造类型),故选D。

3、以下数组初始化中,未赋值元素默认为0的是?()

A.inta[5]={1,2,3};

B.charstr[5];

C.inta[5];

D.以上都是

【答案】:答案解析:全局数组未初始化默认为0,局部数组未初始化是随机值,A初始化部分元素,未赋值默认为0,故选A。

4、指针的自增运算(p++)的含义是?()

A.指针值加1

B.指针指向的变量值加1

C.指针指向地址偏移一个类型大小

D.指针指向地址偏移1字节

【答案】:答案解析:p++使指针指向地址偏移“指向类型大小”(如int指针+4字节),故选C。

5、若inta=3,b=4;则表达式ab++的值是?()

A.12

B.15

C.16

D.7

【答案】:答案解析:b++是后置自增,先参与运算(ab=3*4=12),再自增(b变为5),故选A。

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

A.定义变量

B.定义常量

C.函数声明

D.包含头文件

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

7、以下哪个字符串的长度是3?()

A.abc

B.a\0b

C.ab\n

D.ab

【答案】:答案解析:字符串长度以\0结束,abc含a、b、c(3个字符),a\0b长度为1,故选A。

8、若inti=0;执行while(1){printf(%d,i);i++;if(i==3)break;}输出结果是?()

A.012

B.0123

C.无限循环

D.无输出

【答案】:答案解析:while(1)无限循环,i=3时break,输出012,故选A。

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

A.2

B.4

C.5

D.6

【答案】:答案解析:a[1][1]是第二行第二列,值为4,故选B。

10、若inta=5;执行if(a10);elsea=20;后a的值是?()

A.5

B.20

C.10

D.无定义

【答案】:答案解析:if后分号表示空语句,else执行a=20,故选B。

11、以下函数定义错误的是?()

A.voidfun(){}

B.voidfun(inta){}

C.intfun(){}

D.intfun(){return;}

【答案】:答案解析:D返回类型int(必须return表达式),return无表达式错误,A、B、C正确,故选D。

12、以下if-else语句中,代码块正确的是?()

A.if(x0)printf(a);printf(b);elseprintf(c);

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

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

D.if(x0)printf(a);printf(b);else{printf(c);}

【答案】:答案解析:else需与最近的if匹配,A、C、D中else前有独立printf,语法错误,B用{}包裹代码块正确,故选B。

13、以下哪个是NULL指针?()

A.void*p=0;

B.int*p=NULL;

C.charp=(char)0;

D.以上都正确

【答案】:答案解析:NULL指针是不指向任何有效地址的指针,三种写法均正确,故选D。

14、若intx=5;则表达式++x的结果是?()

A.5

B.6

C.4

D.7

【答案】:答案解析:++x是前置自增,先自增(x变为6)再参与运算,结果为6,故选B。

15、函数参数传递中,值传递适用于?()

A.简单变量,无需修改实参

B.数组,需修改元素

C.指针,需修改实参

D.结构体,需修改成员

【答案】:答案解析:值传递用于简单变量(不修改实参),地址传递用于需修改实参的场景,故选A。

16、以下关于函数递归的说法错误的是?()

A.必须有终止条件

B.可能导致栈溢出

C.效率比循环高

D.代码简洁

【答案

文档评论(0)

1亿VIP精品文档

相关文档