C语言期末基础测试卷(含详细答案解析)_第1页
C语言期末基础测试卷(含详细答案解析)_第2页
C语言期末基础测试卷(含详细答案解析)_第3页
C语言期末基础测试卷(含详细答案解析)_第4页
C语言期末基础测试卷(含详细答案解析)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

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

文档简介

C语言期末基础测试卷(含详细答案解析)适用人群:C语言初学者、大一期末复习、计算机基础考级自测考试时长:90分钟满分:100分说明:试题贴合课堂真题风格,无偏题怪题,答案附带详细解析,方便自查纠错一、单项选择题(共15题,每题2分,共30分)1.以下不属于C语言基本数据类型的是()A.int  B.float  C.string  D.char2.以下合法的C语言变量名是()A.3num  B.num_3  C.num-3  D.int3.C语言中,char类型变量占用的内存字节数是()A.1字节  B.2字节  C.4字节  D.8字节4.表达式3+5%2的运算结果是()A.0  B.4  C.6  D.85.若定义inta=5;执行a+=3;后,a的值为()A.3  B.5  C.8  D.156.C语言中if语句的条件表达式结果为()时,表示条件成立A.仅1  B.非0  C.0  D.任意数7.以下循环语句中,循环体至少执行一次的是()A.for循环  B.while循环  C.do-while循环  D.以上都不对8.数组intarr[5]中,数组下标合法的最大值是()A.0  B.4  C.5  D.69.C语言中函数返回值的关键字是()A.break  B.continue  C.return  D.exit10.预处理命令#include的作用是()A.定义变量  B.引入头文件  C.定义函数  D.编译程序11.表达式5>3&&2<1的结果是()A.0  B.1  C.真  D.假12.若有定义inta=2,b=3;则a||b的值是()A.0  B.1  C.2  D.313.break语句的作用是()A.结束本次循环  B.跳出当前循环或switch结构C.结束程序运行  D.无作用14.二维数组inta[3][4]的元素个数是()A.7  B.10  C.12  D.2415.C语言中,全局变量的作用域是()A.整个程序  B.所在函数  C.所在循环  D.所在文件二、填空题(共10空,每空2分,共20分)1.C语言程序的入口函数是________。2.整型常量、浮点型常量、字符型常量统称为________。3.表达式10/3的结果是________,10.0/3的结果是________。4.定义无符号整型变量的关键字是________。5.switch语句中,用于结束分支的关键字是________。6.字符串结束的标志是________。7.函数调用时,实参和形参的________、类型必须一致。8.指针变量的本质是存放________的变量。三、程序阅读题(共3题,每题6分,共18分)写出以下程序的运行结果,无需修改代码,直接写出输出内容。程序1PlainText

#include<stdio.h>

intmain()

{

inti,sum=0;

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

{

sum+=i;

}

printf("%d",sum);

return0;

}程序2PlainText

#include<stdio.h>

intmain()

{

inta=10,b=20,t;

t=a;

a=b;

b=t;

printf("a=%d,b=%d",a,b);

return0;

}程序3PlainText

#include<stdio.h>

intmain()

{

intx=5;

if(x++>5)

printf("大于5");

else

printf("小于等于5");

return0;

}四、编程题(共3题,第1题10分,第2题16分,第3题6分,共32分)1.基础计算题(10分)编写程序,输入两个整数,计算并输出它们的和、差、积、商(整除)。2.循环应用题(16分)编写程序,输出1~100之间所有能被3整除但不能被5整除的数字,统计并输出这些数字的总个数。3.数组基础题(6分)定义一个整型数组,存放5个学生的成绩,计算并输出5个成绩的平均值。完整答案及详细解析一、单项选择题答案及解析1.C解析:C语言基本数据类型为int、float、double、char,没有string字符串类型,字符串需通过字符数组实现。2.B解析:变量名规则:以字母/下划线开头,由字母、数字、下划线组成,不能使用关键字。A数字开头,C含非法字符,D是关键字。3.A解析:char字符型固定占用1个字节,int通常4字节,float4字节,double8字节。4.B解析:取模运算优先级高于加法,5%2=1,3+1=4。5.C解析:a+=3等价于a=a+3,5+3=8。6.B解析:C语言中,非0即为真,0为假,if条件只要非0就成立。7.C解析:do-while是先执行后判断,至少执行一次;while和for都是先判断后执行,可能一次都不执行。8.B解析:数组下标从0开始,arr[5]下标为0~4,最大值为4。9.C解析:return用于函数返回值;break跳出循环,continue跳过本次循环。10.B解析:#include是预处理指令,作用是导入系统或自定义头文件。11.A解析:逻辑与&&两边都为真结果才为真,5>3为真(1),2<1为假(0),整体结果为0。12.B解析:逻辑或||只要一边为真结果即为真,a、b均非0,结果为1。13.B解析:break跳出当前循环或switch;continue仅结束本次循环,进入下一次。14.C解析:二维数组行数3、列数4,总元素数=3*4=12。15.A解析:全局变量定义在所有函数外,作用域为整个程序;局部变量仅作用于所在函数。二、填空题答案及解析1.main()解析:C语言程序从main函数开始执行,是唯一入口函数。2.常量解析:固定不变的量统称为常量。3.3、3.333333解析:整数相除结果为整数,小数相除结果为浮点数。4.unsigned解析:unsignedint表示无符号整型,无负数。5.break解析:switch每个分支末尾需break终止,防止穿透。6.\0解析:系统自动在字符串末尾添加结束符\0,占用一个字节。7.个数解析:实参和形参必须个数相等、类型匹配,否则报错。8.内存地址解析:指针变量专门存放变量的内存地址。三、程序阅读题答案及解析程序1输出结果:15解析:循环累加1+2+3+4+5=15,sum初始值为0,循环结束后输出总和。程序2输出结果:a=20,b=10解析:通过中间变量t完成a、b两个数值的交换。程序3输出结果:小于等于5解析:x++是先取值后自增,判断时x=5,5>5不成立,执行else语句,判断结束后x自增为6。四、编程题参考答案(可直接运行)1.两数四则运算程序PlainText

#include<stdio.h>

intmain()

{

inta,b;

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

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

printf("和:%d\n",a+b);

printf("差:%d\n",a-b);

printf("积:%d\n",a*b);

printf("商:%d\n",a/b);

return0;

}2.1~100筛选数字程序PlainText

#include<stdio.h>

intmain()

{

inti,count=0;

printf("1~100能被3整除不能被5整除的数:\n");

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

{

if(i%3==0&&i%5!=0)

{

printf("%d",i);

count++;

}

}

printf("\n总个数:%d\n",count);

return0;

}3.学生成绩平均值计算PlainText

#incl

温馨提示

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

评论

0/150

提交评论