大学c语言的期末试题(典优).docxVIP

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

大学c语言的期末试题

第一部分单选题(50题)

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

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

B.数组,需修改元素

C.指针,需修改实参

D.结构体,需修改成员

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

2、以下函数调用错误的是?()

A.fun();

B.fun(5);

C.fun(3,4);

D.无错误(需看函数定义)

【答案】:答案解析:调用需匹配函数定义,A对应无参函数,B对应单参函数,C对应双参函数,均可能正确,故选D。

3、以下关于指针的说法正确的是?()

A.指针可用于实现多返回值函数

B.指针可提高程序效率

C.指针可用于动态内存分配

D.以上都正确

【答案】:答案解析:指针的核心用途包括多返回值、高效访问、动态内存分配,故选D。

4、若intx=1;执行switch(x){case1:printf(1);break;case1:printf(2);break;}会出现什么情况?()

A.输出1

B.输出2

C.编译错误

D.运行错误

【答案】:答案解析:case后常量不能重复,编译时会报错,故选C。

5、以下定义指向字符串的指针正确的是?()

A.char*str=hello;

B.charstr[]=hello;

C.char(*str)[]=hello;

D.charstr[5]=hello;

【答案】:答案解析:A是指向字符串常量的指针,B是字符数组,C是数组指针(类型不匹配),D长度不足(含\0需6字节),故选A。

6、以下哪个运算符的优先级最高?()

A.+

B.*

C.=

D.==

【答案】:答案解析:算术运算符中*(乘)优先级高于+(加),赋值(=)和关系(==)优先级更低,故选B。

7、以下哪个关键字用于定义整型变量?()

A.char

B.int

C.float

D.double

【答案】:答案解析:int定义整型,char字符型,float单精度浮点型,double双精度浮点型,故选B。

8、若inta=7,*p=a;执行++*p;后a的值是?()

A.7

B.8

C.a

D.无定义

【答案】:答案解析:++*p等价于++(*p),先解引用取a的值,再加1(a=8),故选B。

9、以下数组定义错误的是?()

A.inta[5];

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

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

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

【答案】:答案解析:C初始化元素超5个,编译报错,其余正确,故选C。

10、以下函数参数传递方式中,能修改实参值的是?()

A.值传递

B.地址传递

C.都能

D.都不能

【答案】:答案解析:值传递修改的是形参(副本),不影响实参;地址传递通过指针修改实参值,故选B。

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

A.12

B.6

C.8

D.10

【答案】:答案解析:累加02+12+22+3*2=0+2+4+6=12,s=12,故选A。

12、下列变量定义语法正确的是?()

A.inta=5;

B.inta=b=5;

C.int5a;

D.inta;b;

【答案】:答案解析:B不能连续赋值定义,C标识符开头错误,D分号分隔需分别定义(inta;intb;),故选A。

13、以下定义指向数组的指针正确的是?()

A.inta[5],*p=a;

B.inta[5],*p=a;

C.inta[5],p=a;

D.inta[5],*p=a[0];

【答案】:答案解析:a是数组名(首元素地址),p=a等价于p=a[0],Ba是数组地址(类型不匹配),Cp是普通变量,Dp不能赋a[0]的值,故选A。

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

A.5

B.6

C.8

D.9

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

15、若intx=3;执行以下代码后a的值是?()inta;if(x5)a=10;elseif(x2)a=20;elsea=30;

A.10

B.20

C.30

D.无定义

【答案】:答案解析:x=32,执行第二个分支,a=20,故选B。

16、函数参数的默认值在______指定?()

A.函数定义时

B.函数声明时

C.函数调用时

D.C语言不支持默认参数

【答案】:答案解析:标准C语言不支持函数参数默认值(C++支持),故选D。

17、若inti=5,s=0;执行while(i

文档评论(0)

1亿VIP精品文档

相关文档