- 0
- 0
- 约6.23千字
- 约 13页
- 2026-01-31 发布于河南
- 举报
2026年c语言考期末试题
第一部分单选题(50题)
1、若inta=7,b=3;执行if(a%b==1)a=0;elseb=0;后a和b的值分别是?()
A.0,3
B.7,0
C.0,0
D.7,3
【答案】:答案解析:7%3=1,条件为真,a=0,b保持3,故选A。
2、若intx=4;执行switch(x){case2:printf(2);break;default:printf(0);case4:printf(4);break;}输出结果是?()
A.04
B.4
C.204
D.无输出
【答案】:答案解析:x=4匹配case4,执行输出4,break跳出,故选B。
3、以下关于指针的说法正确的是?()
A.指针可用于实现多返回值函数
B.指针可提高程序效率
C.指针可用于动态内存分配
D.以上都正确
【答案】:答案解析:指针的核心用途包括多返回值、高效访问、动态内存分配,故选D。
4、以下指针定义正确的是?()
A.int*p;
B.char*q;
C.float*r;
D.以上都正确
【答案】:答案解析:A指向int,B指向char,C指向float,均符合指针定义语法,故选D。
5、数组名作为函数参数时,函数形参的正确写法是?()
A.inta[]
B.int*a
C.inta[5]
D.以上都是
【答案】:答案解析:数组形参可写为inta[]、int*a(指针)、inta[5](长度可忽略),本质均为指针,故选D。
6、函数的形参在______时分配内存?()
A.函数定义
B.函数声明
C.函数调用
D.程序编译
【答案】:答案解析:形参是局部变量,函数调用时分配内存,调用结束释放,故选C。
7、数组名的本质是?()
A.数组第一个元素的地址
B.数组最后一个元素的地址
C.数组元素的个数
D.数组的大小
【答案】:答案解析:数组名是首元素地址(常量,不可修改),故选A。
8、以下关于数组的说法正确的是?()
A.数组长度可动态修改
B.数组元素可不同类型
C.数组在内存中连续存储
D.数组名可作为左值赋值
【答案】:答案解析:A数组长度定义后固定,B元素必须同类型,D数组名是常量(不可赋值),C正确,故选C。
9、转义字符\的作用是?()
A.表示反斜杠
B.表示换行
C.表示空格
D.表示制表符
【答案】:答案解析:\用于表示字符反斜杠(\),避免与转义字符冲突,故选A。
10、以下关于指针数组和数组指针的说法正确的是?()
A.指针数组是数组,元素为指针
B.数组指针是指针,指向数组
C.int*arr[5]是指针数组,int(*arr)[5]是数组指针
D.以上都正确
【答案】:答案解析:A、B、C均准确区分了指针数组和数组指针,故选D。
11、C语言中基本数据类型不包括以下哪项?()
A.char
B.int
C.float
D.array
【答案】:答案解析:基本数据类型为char、int、float、double,array是数组(构造类型),故选D。
12、若inti=0;执行for(i=0;i5;i++){if(i==2)continue;printf(%d,i);}输出结果是?()
A.0134
B.01234
C.01
D.无限循环
【答案】:答案解析:i=2时执行continue,跳过printf,输出0134,故选A。
13、以下函数声明正确的是?()
A.intfun(intx,inty);
B.intfun(int,int);
C.intfun(intx;inty);
D.A和B
【答案】:答案解析:函数声明可写参数名或只写类型,A、B正确,C用分号错误,故选D。
14、以下关于函数的说法正确的是?()
A.函数可提高代码复用性
B.函数可简化程序结构
C.函数可便于维护
D.以上都正确
【答案】:答案解析:函数的核心优势是复用、简化结构、便于维护,故选D。
15、以下哪个是合法的字符常量?()
A.a
B.ab
C.a
D.a
【答案】:答案解析:字符常量用单引号包裹单个字符,A是字符串,B是两个字符(错误),D是标识符,故选C。
16、数组作为函数参数时,函数形参不能是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通变量,不能接收数组名(地址),A、B、C均可作为数组形参,故选D。
17、以下哪个函数用于输出字符串?()
A.putchar()
B.printf()
C.gets()
D.scanf()
【答案】:答案解析:printf()可输出字符串(如printf(he
原创力文档

文档评论(0)