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

下载本文档

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

文档简介

大一C语言期末考试试卷(含详细答案解析)考试时长:90分钟满分:100分适用专业:大一计算机、机电、经管等通识专业考试说明:1.本试卷共五大题型,全部为笔试基础题型;2.程序题书写规范C语言代码,语法正确即可得分;3.答案请书写在答题纸上。一、单项选择题(每题2分,共20分)1.以下不属于C语言基本数据类型的是()A.intB.floatC.stringD.char2.以下合法的C语言变量名是()A.123abcB.abc_123C.abc-123D.int3.若定义inta=5,b=2;则表达式a/b的结果是()A.2.5B.2C.3D.2.04.C语言中if和else的配对原则是()A.缩进对齐配对B.随机配对C.就近配对D.依次顺序配对5.循环语句while(1)的循环情况是()A.执行1次B.无限循环C.不执行D.执行2次6.数组定义intarr[5];该数组的合法下标最大值是()A.5B.4C.6D.07.以下关于函数的说法正确的是()A.函数可以嵌套定义B.函数必须有返回值C.函数可以嵌套调用D.自定义函数不能放在main函数前8.执行语句inta;a=3+5%2;后a的值为()A.4B.3C.5D.69.字符串"abcde"在内存中占用的字节数是()A.5B.6C.7D.410.break语句的作用是()A.结束本次循环B.终止整个循环或switch语句C.跳过本次循环D.结束程序运行二、填空题(每题2分,共20分)1.C语言程序的入口函数是________。2.整型、浮点型、字符型属于C语言的________数据类型。3.表达式3&&0的值是________,表达式3||0的值是________。4.for循环的三个表达式分别负责________、循环条件判断、________。5.定义字符数组chars[]="hello";数组长度为________。6.C语言中,________语句可以跳过本次循环,直接进入下一次循环。7.指针变量的本质是存放________的变量。8.双目运算符%的运算对象只能是________类型数据。9.结构化程序设计的三种基本结构是顺序结构、________、________。10.函数调用时,实参和形参的________、类型必须保持一致。三、程序阅读题(每题5分,共20分)1.写出以下程序的运行结果c

#include<stdio.h>

intmain()

{

inta=10,b=20,t;

t=a;

a=b;

b=t;

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

return0;

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

#include<stdio.h>

intmain()

{

inti,s=0;

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

{

s=s+i;

}

printf("%d",s);

return0;

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

#include<stdio.h>

intmain()

{

inta=5;

if(a>3)

printf("大于3");

elseif(a>8)

printf("大于8");

else

printf("小于等于3");

return0;

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

#include<stdio.h>

voidfun(intx)

{

x=x+10;

}

intmain()

{

inta=5;

fun(a);

printf("%d",a);

return0;

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

#include<stdio.h>

intmain()

{

intn;

________;//输入整数n

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

{

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

}

else

{

________;

}

return0;

}五、编程题(第1题10分,第2题15分,共25分)1.编写C语言程序,交换两个整数变量的值并输出(要求不使用第三方变量)。2.编写C语言程序,利用循环计算1~100之间所有奇数的和,并输出最终结果。完整答案及详细解析一、单项选择题答案及解析1.C解析:C语言基础数据类型为int、float、double、char,string是C++字符串类型,不属于C语言基本类型。2.B解析:变量名规则:由字母、数字、下划线组成,不能以数字开头,不能是关键字。A数字开头,D是关键字,C含非法字符。3.B解析:两个整型数据相除,结果为整型,直接舍去小数部分,5/2=2。4.C解析:C语言中else始终与最近的、未配对的if配对,和缩进无关。5.B解析:while循环条件为非0即真,1为真,循环会一直执行,形成死循环。6.B解析:数组下标从0开始,定义长度为5的数组,下标为0、1、2、3、4,最大值为4。7.C解析:C语言函数不能嵌套定义,但可以嵌套调用;无返回值函数用void定义;自定义函数可放在main函数前。8.A解析:取模运算优先级高于加法,5%2=1,3+1=4。9.B解析:字符串末尾自动隐藏结束符'\0',占用1个字节,5个有效字符+1个结束符共6字节。10.B解析:break终止当前循环或switch结构;continue是跳过本次循环。二、填空题答案及解析1.main()解析:C语言程序从main函数开始执行,是唯一程序入口。2.基本解析:C语言数据类型分为基本类型、构造类型、指针类型等。3.0;1解析:逻辑与全真为真,3真0假,结果为假(0);逻辑或一真即真,结果为真(1)。4.循环变量初始化;循环变量更新5.6解析:包含末尾'\0'结束符,共6个字节长度。6.continue解析:continue仅跳过本次循环,不终止整体循环。7.内存地址解析:指针变量专门用于存储其他变量的内存地址。8.整型(整数)解析:取模运算符只能用于整数运算,浮点型无法取模。9.选择结构;循环结构解析:程序设计三种核心结构。10.个数解析:实参与形参必须个数相等、类型匹配,否则参数传递出错。三、程序阅读题答案及解析1.运行结果:a=20,b=10解析:通过临时变量t完成两个变量的值交换,最终a、b数值互换。2.运行结果:15解析:循环累加1+2+3+4+5,求和结果为15。3.运行结果:大于3解析:a=5满足a>3条件,执行对应输出,后续elseif不再判断执行。4.运行结果:5解析:C语言函数参数传递为值传递,形参修改不会影响实参,main函数中a值不变。四、程序填空题答案第一空:scanf("%d",&n);第二空:n%2==0第三空:printf("该数不是偶数\n");五、编程题参考答案(标准满分代码)1.不借助第三方变量交换两个整数c

#include<stdio.h>

intmain()

{

inta,b;

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

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

printf("交换前:a=%d,b=%d\n",a,b);

//利用加减法实现交换

a=a+b;

b=a-b;

a=a-b;

printf("交换后:a=%d,b=%d\n",a,b);

return0;

}解析:通过数值加减运算抵消原有数值,无需临时变量即可完成交换。2.计算1~100所有奇数的和c

#include<stdio.h>

intmain()

{

inti,sum=0;

for(i=1;i<=100

温馨提示

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

评论

0/150

提交评论