合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷_第1页
合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷_第2页
合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷_第3页
合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷_第4页
合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

合肥幼儿师范高等专科学校《C语言》2025-2026学年期末试卷考试时间:120分钟满分:100分班级:__________姓名:__________学号:__________得分:__________考生须知:1.所有答案均需写在答题纸上,写在试卷上无效;2.答题前请填写清楚班级、姓名、学号;3.严禁抄袭、作弊,违者按学校相关规定处理;4.考试结束后,将试卷和答题纸一并交回。一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在答题纸相应位置。错选、多选或未选均无分。在C语言中,用于声明常量的关键字是()

A.varB.constC.staticD.define

以下哪个语句在C语言中是非法的()

A.intx=5;B.floaty=3.14;C.doublez=2.71828e0;D.charc=\x41;

若有定义:intarr[5]={1,2,3,4,5};,则数组arr的第四个元素的值是()

A.1B.2C.3D.4

在C语言中,函数默认的返回类型是()

A.intB.voidC.floatD.char

以下哪个运算符在C语言中用于判断两个值是否不相等()

A.==B.!=C.===D.<>

若有定义:charstr[]="Hello";,则数组str的长度是()

A.5B.6C.7D.8

在C语言中,用于动态分配内存的函数是()

A.mallocB.freeC.reallocD.bothAandC

以下哪个语句在C语言中用于退出当前循环()

A.breakB.continueC.exitD.return

若有定义:intx=10,y=20;,则表达式x<y?x:y的值是()

A.10B.20C.0D.1

在C语言中,以下哪个关键字用于定义结构体类型()

A.structB.unionC.enumD.typedef二、多项选择题(本大题共5小题,每小题2分,共10分)在每小题列出的四个备选项中至少有两个是符合题目要求的,请将其代码填写在答题纸相应位置。错选、多选、少选或未选均无分。C语言中,以下哪些是合法的变量名()

A.int_123B.123intC._int123D.int$123

以下哪些是C语言中的基本数据类型()

A.intB.charC.floatD.string

在C语言中,以下哪些运算符具有左结合性()

A.+B.-C.*D.=

以下哪些是C语言中的控制流语句()

A.ifB.forC.whileD.switch

在C语言中,以下哪些函数用于输入输出()

A.printfB.scanfC.getcharD.putchar

三、填空题(本大题共10小题,每小题2分,共20分)请将答案填写在答题纸相应位置,不填或错填均无分。在C语言中,用于声明无符号整型的关键字是________。若有定义:intx=5;,则表达式x%2的值是________。在C语言中,用于释放动态分配内存的函数是________。以下代码段的功能是计算1到10的累加和,请补充完整:intsum=0;for(inti=1;i<=10;i++)________;printf("Sum=%d\n",sum);在C语言中,用于定义宏的预处理指令是________。若有定义:charstr[]="Hello";,则访问str中第三个字符的正确方式是________。在C语言中,函数声明的作用是________。以下代码段的功能是判断一个数是否为偶数,请补充完整:intnum;printf("Enteranumber:");scanf("%d",&num);if(________)printf("Even\n");elseprintf("Odd\n");在C语言中,用于定义枚举类型的关键字是________。若有定义:structPoint{intx;inty;};,则声明一个结构体变量p的正确方式是________。四、程序分析题(本大题共2小题,每小题10分,共20分)阅读下列程序,写出程序运行结果或回答相关问题,将答案填写在答题纸相应位置。阅读以下程序,写出程序运行结果。#include<stdio.h>

intmain(){

inta=3,b=5;

inttemp=a;

a=b;

b=temp;

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

return0;

}阅读以下程序,回答问题。#include<stdio.h>

voidswap(int*a,int*b){

inttemp=*a;

*a=*b;

*b=temp;

}

intmain(){

intx=5,y=10;

printf("Beforeswap:x=%d,y=%d\n",x,y);

swap(x,y);

printf("Afterswap:x=%d,y=%d\n",x,y);

return0;

}(1)请解释函数swap的作用;(5分)(2)说明程序运行后,x和y的值是否发生交换,并说明原因。(5分)五、编程题(本大题共2小题,每小题15分,共30分)请编写完整C语言程序,要求代码规范、有必要注释,将程序代码填写在答题纸相应位置。编写一个C语言程序,实现功能:从键盘输入3名幼儿的年龄(整数),计算并输出这3名幼儿的平均年龄,保留1位小数。(提示:使用基本输入输出函数,注意数据类型转换)编写一个C语言程序,定义结构体存储幼儿的基本信息(姓名、年龄、性别),从键盘输入2名幼儿的信息,然后将这2名幼儿的信息输出到屏幕上。(提示:结构体定义、输入输出函数的使用)参考答案及评分标准(供阅卷老师使用)一、单项选择题(每小题2分,共20分)1.B2.D3.D4.A5.B6.B7.D8.A9.A10.A二、多项选择题(每小题2分,共10分)1.AC2.ABC3.ABC4.ABCD5.ABCD三、填空题(每小题2分,共20分)1.unsignedint2.13.free4.sum+=i(或sum=sum+i)5.#define6.str[2]7.告知编译器函数的返回类型、函数名和参数列表8.num%2==09.enum10.structPointp;四、程序分析题(每小题10分,共20分)运行结果:a=5,b=3(10分,答案正确得满分,错误不得分)(1)函数swap的作用是:通过指针接收两个整数的地址,交换这两个地址所指向的整数的值(5分,核心是“通过指针交换两个变量的值”,表达合理即可得分);(2)x和y的值不发生交换(2分)。原因:main函数中调用swap函数时,传递的是x和y的值(值传递),形参a和b是实参x和y的副本,swap函数中交换的是副本的值,不会影响实参x和y本身的值(3分,表达合理即可得分)。五、编程题(每小题15分,共30分)评分标准:代码结构完整(包含头文件、main函数)3分;正确输入3个整数4分;正确计算平均年龄4分;正确输出(保留1位小数)3分;代码注释1分。#include<stdio.h>

intmain(){

//定义3个变量存储幼儿年龄,avg存储平均年龄

intage1,age2,age3;

floatavg;

//输入3名幼儿的年龄

printf("请输入3名幼儿的年龄(用空格分隔):");

scanf("%d%d%d",&age1,&age2,&age3);

//计算平均年龄,注意数据类型转换

avg=(age1+age2+age3)/3.0;

//输出平均年龄,保留1位小数

printf("3名幼儿的平均年龄为:%.1f\n",avg);

return0;

}评分标准:正确定义结构体(包含姓名、年龄、性别)4分;代码结构完整(头文件、main函数)3分;正确输入2名幼儿信息4分;正确输出幼儿信息3分;代码注释1分。#include<stdio.h>

//定义结构体,存储幼儿基本信息

structChild{

charname[20];//姓名

intage;//年龄

chargender[5];//性别

};

intmain(){

//声明2个结构体变量,存储2名幼儿信息

structChildc1,c2;

//输入第一名幼儿信息

printf("请输入第一名幼儿的信息(姓名年龄性别):");

scanf("%s%d%s",,&c1.age,c1.gender);

//输入第二名幼儿信息

printf("请输入第二名幼儿的信息(姓名年龄性别):");

温馨提示

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

评论

0/150

提交评论