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

下载本文档

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

文档简介

C语言程序设计期末考试试卷(含详细答案解析)适用专业:计算机、机电、物联网等理工科专业考试时长:90分钟满分:100分考试说明:闭卷考试,禁止携带资料,所有代码均以标准C语言(C89)语法为准一、单项选择题(每题2分,共20分)1.以下不属于C语言基本数据类型的是()A.intB.floatC.stringD.char2.在C语言中,定义符号常量必须使用的关键字是()A.defineB.constC.staticD.extern3.已知inta=5,b=2;则表达式a/b的运算结果是()A.2.5B.2C.3D.2.04.以下合法的C语言变量名是()A.1_numB.num_1C.num-1D.int5.if和else的配对原则是()A.缩进对齐配对B.随机配对C.就近配对D.从上到下依次配对6.循环语句中,能够直接结束本次循环,进入下一次循环的关键字是()A.breakB.continueC.returnD.exit7.一维数组intarr[5]的合法下标范围是()A.1~5B.0~5C.0~4D.1~48.以下关于函数的说法正确的是()A.函数可以嵌套定义B.函数可以嵌套调用C.主函数可以被其他函数调用D.函数必须有返回值9.指针变量char*p;中,p存储的是()A.字符数据B.变量的地址C.字符串D.数组全部内容10.结构体类型的说法正确的是()A.结构体成员必须是同一种数据类型B.结构体变量不可以整体赋值C.结构体可以组合不同类型的数据D.结构体定义后无法使用二、填空题(每空2分,共20分)1.C语言程序的入口函数是________。2.整型、浮点型、字符型属于C语言的________数据类型。3.表达式3%2的结果是________,表达式5/2.0的结果是________。4.若inta=3;a+=2;执行后a的值为________。5.for循环的三个表达式分别负责________、循环条件判断、________。6.数组名代表数组的________地址。7.函数参数分为形参和________。8.指针变量的本质是存储________的变量。三、程序阅读题(每题5分,共20分)1.写出以下程序的运行结果PlainText

#include<stdio.h>

intmain()

{

inta=10,b=20;

if(a>b)

printf("%d",a);

else

printf("%d",b);

return0;

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

#include<stdio.h>

intmain()

{

inti,sum=0;

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

{

sum=sum+i;

}

printf("%d",sum);

return0;

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

#include<stdio.h>

intmain()

{

intarr[3]={1,2,3};

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

return0;

}4.写出以下程序的运行结果PlainText

#include<stdio.h>

voidfun(intx)

{

x=x*2;

}

intmain()

{

inta=5;

fun(a);

printf("%d",a);

return0;

}四、程序填空题(每空3分,共15分)以下程序功能:输入一个整数,判断该数是否为偶数,补充完整代码。PlainText

#include<stdio.h>

intmain()

{

intn;

________;//输入整数n

if(________)//判断偶数条件

{

printf("该数是偶数\n");

}

else

{

printf("该数是奇数\n");

}

return0;

}五、编程大题(共25分)1.编写程序,输入两个整数,输出两个数中的最大值。(12分)2.编写程序,利用循环计算1~100之间所有偶数的和。(13分)参考答案及详细解析一、单项选择题答案及解析1.C解析:C语言基础数据类型包含int整型、float单精度浮点、double双精度浮点、char字符型,没有string字符串类型,字符串通过字符数组实现。2.A解析:#define用于定义符号常量,const定义只读变量,static是静态变量修饰符,extern是外部变量声明。3.B解析:两个整型数据相除,结果为整型,直接舍去小数部分,5/2结果为2。4.B解析:变量名规则:由字母、数字、下划线组成,不能以数字开头,不能使用关键字。A以数字开头,C含非法字符,D是关键字。5.C解析:C语言中else遵循就近配对原则,与上方最近的、未配对的if结合,和缩进无关。6.B解析:continue结束本次循环,直接进入下一次循环;break是跳出整个循环或switch语句。7.C解析:C语言数组下标从0开始,定义长度为5的数组,下标为0、1、2、3、4。8.B解析:C语言函数不能嵌套定义,但可以嵌套调用;主函数不能被调用;无返回值函数使用void定义。9.B解析:指针变量专门用来存放内存地址,char*p是字符指针,存储字符变量的地址。10.C解析:结构体可以包含不同数据类型的成员;结构体变量支持整体赋值;结构体定义后可正常定义变量使用。二、填空题答案及解析1.main()解析:C语言程序固定从main函数开始执行,是程序唯一入口。2.基本解析:整型、浮点型、字符型是C语言三大基本数据类型。3.1、2.5解析:%是取余运算符,3对2取余结果为1;5/2.0包含浮点数据,结果为浮点型2.5。4.5解析:a+=2等价于a=a+2,初始a=3,计算后a=5。5.变量初始化、变量更新解析:for(初始化表达式;条件表达式;更新表达式)是标准语法结构。6.首元素解析:数组名是常量地址,代表数组第一个元素的内存地址。7.实参解析:函数定义时的参数为形参,调用函数时传入的参数为实参。8.内存地址解析:指针变量的核心作用是存储内存地址,通过地址访问对应数据。三、程序阅读题答案及解析1.运行结果:20解析:a=10,b=20,判断a>b不成立,执行else语句,输出b的值20。2.运行结果:15解析:循环累加1+2+3+4+5,总和为15。3.运行结果:2解析:数组下标从0开始,arr[0]=1,arr[1]=2,arr[2]=3,输出arr[1]结果为2。4.运行结果:5解析:C语言函数参数传递为值传递,形参x的修改不会影响主函数中实参a的值,a保持初始值5。四、程序填空题答案第一空:scanf("%d",&n);第二空:n%2==0解析:scanf函数用于接收键盘输入,变量前必须加&取地址符;偶数的判定条件是对2取余结果为0。五、编程大题参考答案(完整可运行代码)1.求两个整数的最大值PlainText

#include<stdio.h>

intmain()

{

inta,b,max;

//输入两个整数

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

//判断最大值

if(a>b)

{

max=a;

}

else

{

max=b;

}

//输出结果

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

return0;

}解题思路:定义变量存储两个整数,通过if分支语句对比大小,筛选出最大值并输出。2.计算1~100所有偶数的和PlainText

#include<stdio.h>

intmain()

{

inti,sum=0;

//遍历1到100的所有整数

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

{

//判断是否为偶数

if(i%2==0)

温馨提示

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

最新文档

评论

0/150

提交评论