C语言程序设计期末试题(含详细答案)_第1页
C语言程序设计期末试题(含详细答案)_第2页
C语言程序设计期末试题(含详细答案)_第3页
C语言程序设计期末试题(含详细答案)_第4页
C语言程序设计期末试题(含详细答案)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计期末试题(含详细答案)适用场景:大一期末、计算机基础测试、零基础补考考试时长:90分钟满分:100分说明:试题无偏题怪题,贴合课本基础知识,答案附带步骤解析,适合刷题、复盘知识点一、单项选择题(共15题,每题2分,共30分)1.以下不属于C语言基本数据类型的是()A.int  B.float  C.string  D.char2.C语言中,合法的标识符是()A.123abc  B.abc_123  C.abc-123  D.int3.已知inta=5;执行a+=3;后,a的值为()A.5  B.8  C.3  D.24.逻辑表达式3>5&&2<4的结果是()A.1  B.0  C.真  D.无法确定5.C语言中if语句的嵌套规则,以下说法正确的是()A.else总是和最外层if配对B.else总是和它上面最近的未配对的if配对C.else随机配对D.if不能嵌套6.以下循环语句中,循环体执行次数为0的是()A.for(inti=1;i<=5;i++)  B.while(0)  C.do{}while(0)  D.while(1)7.在C语言中,数组名代表的是()A.数组所有元素的值  B.数组第一个元素的地址C.数组元素的个数  D.数组的长度8.定义数组inta[3]={1,2};则a[2]的值为()A.随机值  B.0  C.2  D.39.以下关于函数的说法,错误的是()A.函数可以嵌套调用  B.函数可以递归调用C.函数可以嵌套定义  D.自定义函数可以放在main函数前后10.若有定义int*p,a=10;p=&a;以下说法正确的是()A.p的值为10  B.*p的值为10  C.a的值是地址  D.p和a等价11.C语言中,return语句的作用是()A.结束整个程序  B.结束当前函数调用,返回值C.暂停程序运行  D.重启程序12.以下运算符中优先级最高的是()A.=  B.+  C.&&  D.++13.已知charc='6';则c中存储的是()A.数字6  B.字符'6'的ASCII码值  C.字符串"6"  D.随机值14.while和do-while循环的主要区别是()A.while循环执行次数多B.do-while循环至少执行一次,while可能一次不执行C.无区别D.do-while循环效率更高15.结构化程序设计的三种基本结构是()A.顺序、选择、循环  B.顺序、跳转、循环C.选择、跳转、递归  D.顺序、选择、递归二、填空题(共10空,每空2分,共20分)1.C语言程序的入口函数是________。2.整型常量、浮点型常量、字符型常量统称为________常量。3.表达式5%2的结果是________,5/2的结果是________。4.若inta=3,b=5;执行a=b;后,a的值为________。5.for循环的三个表达式分别用于________、________、________。6.指针变量的本质是存储________的变量。7.数组下标从________开始计数。三、程序阅读题(共3题,每题6分,共18分)1.写出以下程序的运行结果c

#include<stdio.h>

intmain()

{

inta=10,b=20;

if(a>b)

printf("%d",a);

else

printf("%d",b);

return0;

}2.写出以下程序的运行结果c

#include<stdio.h>

intmain()

{

inti,sum=0;

for(i=1;i<=3;i++)

{

sum=sum+i;

}

printf("%d",sum);

return0;

}3.写出以下程序的运行结果c

#include<stdio.h>

intmain()

{

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

printf("%d",a[1]);

return0;

}四、程序填空题(共2空,每空4分,共8分)以下程序功能:计算1~10的累加和,补充完整代码。c

#include<stdio.h>

intmain()

{

inti,sum=0;

for(i=1;_______;i++)

{

_______;

}

printf("sum=%d",sum);

return0;

}五、编程题(共2题,每题12分,共24分)1.编写C语言程序,输入两个整数,输出两个数中的最大值。2.编写C语言程序,输出1~100之间所有的偶数。参考答案及详细解析一、单项选择题答案及解析1.C解析:C语言基本数据类型为int、float、double、char,string是C++字符串类型,C语言无此基础类型。2.B解析:标识符规则:字母、数字、下划线组成,不能以数字开头,不能是关键字。A数字开头、C含减号、D是关键字。3.B解析:a+=3等价于a=a+3,5+3=8。4.B解析:逻辑与&&两边都为真结果才为1,3>5为假(0),整体结果为0。5.B解析:C语言if嵌套遵循就近匹配原则,else匹配上方最近未配对的if。6.B解析:while(条件),条件为0(假)时循环体一次不执行;do-while至少执行一次。7.B解析:数组名是数组首元素的地址,是常量地址,不可赋值。8.B解析:数组部分初始化,未赋值的元素系统默认初始化为0。9.C解析:C语言函数可以嵌套调用、递归调用,但不允许嵌套定义。10.B解析:p存储变量a的地址,*p是取地址对应的值,即a的值10。11.B解析:return用于结束当前函数,带回返回值;结束整个程序用exit()。12.D解析:运算符优先级:自增运算符>算术运算符>逻辑运算符>赋值运算符。13.B解析:char类型变量存储的是字符对应的ASCII码值,而非字符本身或数字。14.B解析:while先判断后执行,条件不成立则一次不执行;do-while先执行后判断,至少执行一次。15.A解析:结构化程序设计三大核心结构:顺序、选择、循环。二、填空题答案1.main()2.基本3.1、2(解析:%是取余运算,5除2余1;/是整数除法,舍去小数)4.55.循环变量初始化、循环条件判断、循环变量更新6.内存地址7.0三、程序阅读题答案1.运行结果:20解析:a=10,b=20,a>b条件不成立,执行else语句,输出b的值。2.运行结果:6解析:循环执行3次,sum=1+2+3=6。3.运行结果:2解析:数组下标从0开始,a[0]=1,a[1]=2。四、程序填空题答案第一空:i<=10第二空:sum=sum+i(或sum+=i)解析:循环遍历1到10,每次将i累加到sum中,最终得到1-10累加和。五、编程题参考答案(可直接运行)1.输入两个整数,输出最大值c

#include<stdio.h>

intmain()

{

inta,b,max;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

if(a>b)

{

max=a;

}

else

{

max=b;

}

printf("最大值为:%d\n",max);

return0;

}2.输出1~100所有偶数c

#include<stdio.h>

intmain()

{

inti;

print

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论