c语言测考试题库(必刷).docxVIP

  • 0
  • 0
  • 约6.37千字
  • 约 13页
  • 2026-01-30 发布于河南
  • 举报

c语言测考试题库

第一部分单选题(50题)

1、若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。

2、二维数组a[2][3]在内存中存储的顺序是?()

A.a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2]

B.a[0][0],a[1][0],a[0][1],a[1][1],a[0][2],a[1][2]

C.随机顺序

D.按列存储

【答案】:答案解析:二维数组按行优先连续存储,顺序为第一行所有元素,再第二行,故选A。

3、数组作为函数参数时,函数形参不能是?()

A.inta[]

B.int*a

C.inta[5]

D.inta

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

4、指针变量的作用是存储?()

A.变量的值

B.变量的地址

C.函数的地址

D.数组的元素

【答案】:答案解析:指针变量专门存储其他变量的内存地址,故选B。

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

A.14

B.1234

C.1

D.无输出

【答案】:答案解析:i初始1,加3后4,执行2次,输出14,故选A。

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

A.intfun(inta,intb){returna+b;}

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

C.intfun(){inta=3;returna;}

D.voidfun(inta){returna;}

【答案】:答案解析:D返回值类型void,不能return表达式a,语法错误,故选D。

7、break语句不能用于以下哪种结构?()

A.for循环

B.while循环

C.do-while循环

D.if语句

【答案】:答案解析:break可用于循环(for/while/do-while)和switch语句,不能用于if语句,故选D。

8、以下指针运算中,结果为指针的是?()

A.*p

B.p+1

C.a

D.B和C

【答案】:答案解析:p+1是指针偏移,a是取地址,结果均为指针;*p是解引用(获取值),故选D。

9、函数返回值的类型由______决定?()

A.return语句中的表达式类型

B.函数定义时的返回类型

C.函数调用时的参数类型

D.编译器默认类型

【答案】:答案解析:函数返回类型在定义时指定,return表达式类型需与返回类型匹配(不匹配则强制转换),故选B。

10、以下if-elseif语句的执行逻辑是?()if(x0)printf(负);elseif(x==0)printf(零);elseprintf(正);

A.多个条件可同时满足

B.仅执行第一个满足的条件分支

C.所有满足的条件分支都执行

D.无满足条件则不执行

【答案】:答案解析:if-elseif是互斥分支,仅执行第一个满足条件的分支,故选B。

11、若inti=0,s=0;执行do{s+=i;i++;}while(i5);后s的值是?()

A.10

B.15

C.5

D.0

【答案】:答案解析:do-while累加0+1+2+3+4=10,s=10,故选A。

12、以下switch语句语法错误的是?()

A.switch(x){case1:printf(1);break;}

B.switch(x){casea:printf(a);break;}

C.switch(x){case1.5:printf(1.5);break;}

D.switch(x){default:printf(0);}

【答案】:答案解析:case后必须是整型常量,1.5是浮点型,语法错误,故选C。

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

A.if(x0)printf(yes);

B.ifx0printf(yes);

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

D.if(x0){printf(yes)}

【答案】:答案解析:if后条件需加括号,B缺少括号,C分号导致语句结束,D缺少分号,故选A。

14、指针变量的大小取决于?()

A.指向变量的类型

B.编译器和系统(32位4字节,64位8字节)

C.指针变量的名称

D.变量的值

【答案】:答案解析:指针大小与指向类型无关,取决于系统位数(32位4B,64位8B),故选B。

15、若inta=3;执行

文档评论(0)

1亿VIP精品文档

相关文档