版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
春考c语言考试题库第一部分单选题(50题)1、若inta=7,*p=&a;执行++*p;后a的值是?()
A.7
B.8
C.&a
D.无定义
【答案】:答案解析:++*p等价于++(*p),先解引用取a的值,再加1(a=8),故选B。2、若charstr="hello";则str[1]的值是?()
A.'h'
B.'e'
C.'l'
D.'\0'
【答案】:答案解析:str是字符串首地址,str[1]等价于(str+1),值为'e',故选B。3、若inti=1;执行while(i<5){printf("%d",i);i+=2;}输出结果是?()
A.13
B.135
C.1234
D.无输出
【答案】:答案解析:i初始1,每次加2,执行2次(1、3),输出13,故选A。4、以下switch语句中,default的执行时机是?()
A.所有case都不匹配时
B.第一个case不匹配时
C.最后一个case不匹配时
D.任何时候
【答案】:答案解析:default仅在所有case都不匹配时执行,故选A。5、若inta[4]={10,20,30,40};则a+1表示?()
A.10的地址
B.20的地址
C.30的地址
D.40的地址
【答案】:答案解析:a是首地址(a[0]=10),a+1是a[1](20)的地址,故选B。6、以下关于函数参数的说法正确的是?()
A.形参是局部变量
B.实参是局部变量
C.形参在函数调用后释放
D.实参在函数调用后释放
【答案】:答案解析:形参是函数内局部变量(调用时分配内存,调用结束释放),实参是主调函数中的变量(生命周期与主调函数一致),故选A。7、函数返回值的类型由______决定?()
A.return语句中的表达式类型
B.函数定义时的返回类型
C.函数调用时的参数类型
D.编译器默认类型
【答案】:答案解析:函数返回类型在定义时指定,return表达式类型需与返回类型匹配(不匹配则强制转换),故选B。8、若inti=0;执行for(i=0;i<5;i++){printf("%d",i);if(i==2)break;}输出结果是?()
A.012
B.01
C.01234
D.无输出
【答案】:答案解析:i=2时break,输出012,故选A。9、C语言程序的入口函数是?()
A.main()
B.printf()
C.scanf()
D.main
【答案】:答案解析:所有C程序从main()函数开始执行,必须有且仅有一个,故选A。10、若inta=4;执行a-=2;后a的值是?()
A.2
B.4
C.6
D.0
【答案】:答案解析:a-=2等价于a=a-2,4-2=2,故选A。11、指针作为函数返回值时,不能返回?()
A.静态局部变量的地址
B.全局变量的地址
C.动态分配内存的地址
D.局部变量的地址
【答案】:答案解析:局部变量在函数调用结束后释放,返回其地址会导致野指针,故选D。12、以下数组定义错误的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:数组长度不能为0,编译报错,其余正确,故选A。13、continue语句在循环中的作用是?()
A.终止整个循环
B.跳过本次循环剩余部分,继续下一次
C.暂停循环
D.无作用
【答案】:答案解析:continue跳过本次循环剩余代码,直接进入下一次循环条件判断,故选B。14、以下函数递归调用的例子是?()
A.计算阶乘
B.循环输出数字
C.数组遍历
D.变量交换
【答案】:答案解析:阶乘常用递归实现(n!=n*(n-1)!),B、C、D用循环更高效,故选A。15、若inti=0;执行while(1){if(i==3)break;printf("%d",i);i++;}输出结果是?()
A.012
B.0123
C.无限循环
D.无输出
【答案】:答案解析:while(1)是无限循环,i=3时break,输出012,故选A。16、以下关于main函数的说法错误的是?()
A.程序从main开始执行
B.main函数可带参数
C.main函数必须有返回值
D.main函数可调用其他函数
【答案】:答案解析:main函数可声明为void(无返回值),C说法错误,A、B、D正确,故选C。17、数组在内存中的存储方式是?()
A.随机存储
B.连续存储
C.链式存储
D.散列存储
【答案】:答案解析:数组元素在内存中连续存放,便于通过下标访问,故选B。18、若inti=0;执行while(i<5){i++;if(i==3)continue;printf("%d",i);}输出结果是?()
A.1245
B.12345
C.01245
D.无输出
【答案】:答案解析:i=3时continue,跳过printf,输出1、2、4、5,故选A。19、以下哪个是C语言的循环语句?()
A.if
B.for
C.else
D.switch
【答案】:答案解析:C语言循环语句包括for、while、do-while,if/else是选择语句,switch是多分支选择语句,故选B。20、递归函数的终止条件是?()
A.函数调用自身
B.函数返回值为0
C.不再调用自身的条件
D.无终止条件
【答案】:答案解析:递归函数必须有终止条件(否则无限递归栈溢出),终止条件是不再调用自身的判断,故选C。21、以下定义指向二维数组的指针正确的是?()
A.inta[2][3],(*p)[3]=a;
B.inta[2][3],*p=a;
C.inta[2][3],p=a[0];
D.inta[2][3],*p=&a;
【答案】:答案解析:A是指向3列数组的指针(匹配二维数组a的行),B、C、D类型不匹配,故选A。22、函数参数传递中,值传递的特点是?()
A.形参修改影响实参
B.形参是实参的副本
C.传递的是变量地址
D.用于数组传参
【答案】:答案解析:值传递时形参是实参的拷贝,修改形参不影响实参,地址传递才影响实参,故选B。23、以下函数调用正确的是?()
A.fun(5);
B.fun(3,4);
C.fun("hello");
D.取决于函数定义
【答案】:答案解析:函数调用需匹配函数定义的参数类型和个数,A、B、C是否正确取决于函数定义,故选D。24、若inta=3,b=5;执行以下代码后输出结果是?()if(a>b)printf("A");elseprintf("B");
A.A
B.B
C.AB
D.无输出
【答案】:答案解析:a=3<b=5,条件为假,执行else分支,输出B,故选B。25、以下关于数组的说法正确的是?()
A.数组下标从1开始
B.数组名可作为左值赋值
C.数组长度定义后不可修改
D.数组元素类型可不同
【答案】:答案解析:数组下标从0开始,数组名是常量(不可赋值),元素类型必须相同,长度定义后固定,故选C。26、若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。27、指针变量的作用是存储?()
A.变量的值
B.变量的地址
C.函数的地址
D.数组的元素
【答案】:答案解析:指针变量专门存储其他变量的内存地址,故选B。28、函数的形参在______时分配内存?()
A.函数定义
B.函数声明
C.函数调用
D.程序编译
【答案】:答案解析:形参是局部变量,函数调用时分配内存,调用结束释放,故选C。29、若inta=4,b=6;则表达式a<b?a+b:a-b的结果是?()
A.10
B.-2
C.4
D.6
【答案】:答案解析:a<b为真,取a+b=4+6=10,故选A。30、指针作为函数参数时,传递的是?()
A.指针的值
B.指针的地址
C.变量的值
D.变量的地址
【答案】:答案解析:指针传参本质是传递变量地址,函数中通过指针可修改实参值,故选D。31、若intx=4;执行if(x++>4)printf("A");elseprintf("B");输出结果是?()
A.A
B.B
C.AB
D.无输出
【答案】:答案解析:x++是后置自增,条件判断时x=4,4>4为假,执行else(输出B),后x变为5,故选B。32、二维数组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。33、以下关于函数的说法错误的是?()
A.函数可嵌套调用
B.函数可递归调用
C.函数可重定义
D.函数可声明多次
【答案】:答案解析:C函数名不能重定义(重复定义编译报错),A、B、D正确,故选C。34、以下哪个运算符的优先级最高?()
A.+
B.*
C.=
D.==
【答案】:答案解析:算术运算符中*(乘)优先级高于+(加),赋值(=)和关系(==)优先级更低,故选B。35、以下指针运算错误的是?()
A.inta=5,*p=&a;p++;
B.inta=5,*p=&a;*p++;
C.inta=5,*p=&a;p=&a+1;
D.inta=5,*p=&a;p=p+2;
【答案】:答案解析:&a是地址常量,不能进行算术运算(&a+1错误),A、B、D均正确,故选C。36、以下if-else语句中,代码块执行顺序正确的是?()
A.先执行if条件,满足则执行if代码块,否则执行else代码块
B.先执行else代码块,再执行if条件
C.同时执行if和else代码块
D.仅执行else代码块
【答案】:答案解析:if-else逻辑为“条件判断→满足执行if,否则执行else”,互斥执行,故选A。37、以下switch语句中,case后的常量可以是?()
A.整数
B.字符
C.枚举常量
D.以上都可以
【答案】:答案解析:switch的case后必须是整型常量(整数、字符、枚举常量,字符本质是ASCII码整数),故选D。38、若inti=0;执行do{i++;printf("%d",i);}while(i<=2);输出结果是?()
A.123
B.012
C.12
D.无输出
【答案】:答案解析:do-while执行3次,i=1、2、3,输出123,故选A。39、递归函数的优点是?()
A.代码简洁,逻辑清晰
B.效率高,占用内存少
C.避免栈溢出
D.适合所有问题
【答案】:答案解析:递归优点是代码简洁(如阶乘、斐波那契数列),缺点是效率低、占用栈空间多(可能溢出),故选A。40、以下转义字符表示换行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是换行符,\是反斜杠,\r是回车符,故选B。41、以下关于数组的说法错误的是?()
A.数组元素必须是同一类型
B.数组长度必须是常量
C.数组可在函数内定义
D.数组可整体赋值
【答案】:答案解析:数组不能用“=”整体赋值,需逐个元素或循环赋值,A、B、C正确,故选D。42、以下哪个条件表达式表示“x是奇数”?()
A.x%2==0
B.x%2!=0
C.x/2==0
D.x/2!=0
【答案】:答案解析:奇数除以2余数为1,x%2!=0表示奇数,A是偶数,故选B。43、若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。44、以下关于void类型函数的说法正确的是?()
A.不能有return语句
B.可以有return语句(无表达式)
C.必须有return语句
D.可返回任意类型
【答案】:答案解析:void函数可写return;(无表达式),用于提前结束函数,不能返回表达式,故选B。45、以下关于指针数组和数组指针的说法正确的是?()
A.指针数组是数组,元素为指针
B.数组指针是指针,指向数组
C.int*arr[5]是指针数组,int(*arr)[5]是数组指针
D.以上都正确
【答案】:答案解析:A、B、C均准确区分了指针数组和数组指针,故选D。46、若inta[3]={1,2,3},p=a;则(p+2)的值是?()
A.1
B.2
C.3
D.无定义
【答案】:答案解析:p+2指向a[2],解引用*(p+2)=a[2]=3,故选C。47、以下关于函数递归的说法错误的是?()
A.必须有终止条件
B.可能导致栈溢出
C.效率比循环高
D.代码简洁
【答案】:答案解析:递归调用会创建栈帧,效率低于循环,A、B、D正确,C错误,故选C。48、以下for循环中,循环变量初始化、条件判断、更新表达式均正确的是?()
A.for(i=0;i<5;i++)
B.for(i=5;i>0;i-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高职动漫制作技术(动漫动画制作)试题及答案
- 2025年大学本科(动物科学)动物遗传学试题及答案
- 2025年大学健康管理(健康管理规划)试题及答案
- 2025年大学统计学(统计学案例分析)试题及答案
- 2025年高职特许经营管理(管理实务)试题及答案
- 2025年高职第四学年(工业网络安全)防护技术阶段测试题及答案
- 2025年大学放射治疗技术(放射治疗操作)试题及答案
- 2025年高职(大数据应用技术)数据分析报告撰写技术综合测试题
- 2025年中职精细化工技术(产品研发)试题及答案
- 2025年高职审计(审计实务)试题及答案
- 新华书店管理办法
- 档案专业人员公司招聘笔试题库及答案
- 工程竣工移交单(移交甲方、物业)
- 2025年高考语文全国一卷试题真题及答案详解(精校打印)
- 糖水店员工管理制度
- 来料检验控制程序(含表格)
- 2025年钛合金阀项目可行性研究报告
- 耙地合同协议书
- 分布式基站光伏电站建设标准
- 2024-2025学年广东省深圳市福田区六年级(上)期末数学试卷
- 道岔滚轮作用原理讲解信号设备检修作业课件
评论
0/150
提交评论