版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
班级学号班级学号姓名本科..............................密..............................封..............................线..............................试卷说明:1、试卷满分100分,120分钟完成试卷;2、钢笔或圆珠笔直接答在试题中(除题目有特殊规定外);3、答卷前将密封线内的项目填写清楚。题号一二三四五总分合分人复核人满分100得分一、选择题(总共10题,每题3分,每题给出的选项中,只有一个选项是符合题目要求的,请将正确答案填在括号内)1.以下关于C语言标识符的描述,正确的是()A.标识符只能由字母、数字和下划线组成B.标识符可以以数字开头C.关键字可以作为标识符D.标识符区分大小写2.若有定义:inta=5,b=2;则表达式a%=b+3的值为()A.0B.1C.2D.33.以下能正确定义一维数组的选项是()A.inta[5]={0,1,2,3,4,5};B.chara[]={'0','1','2','3','4','5','\0'};C.chara="string";D.inta[5]="0123";4.若有定义:inta[3][4];则a数组中元素的个数为()A.3B.4C.7D.125.以下关于函数的说法,错误的是()A.函数可以嵌套调用B.函数可以递归调用C.函数定义可以嵌套D.函数调用时实参和形参的个数、类型要匹配6.若有定义:voidfun(intp){p=20;}则以下调用该函数的方式正确的是()A.inta=10;fun(a);B.inta=10;fun(&a);C.fun(10);D.intp;fun(p);7.以下关于指针的说法,正确的是()A.指针变量可以直接赋值为一个整数B.指针变量可以指向任何类型的变量C.两个指针变量可以直接进行比较大小D.指针变量可以进行算术运算8.若有定义:charstr[]="hello";则sizeof(str)的值为()A.5B.6C.7D.89.以下关于结构体的说法,错误的是()A.结构体成员可以是不同类型的数据B.结构体定义时可以不指定结构体名C.结构体变量可以作为函数参数传递D.结构体变量不能整体赋值10.若有定义:typedefstruct{inta;charb;}STU;则以下定义结构体变量的方式正确的是()A.STUs;B.structSTUs;C.struct{inta;charb;}s;D.typedefSTUs;二、多项选择题(总共5题,每题4分,每题给出的选项中,有多个选项是符合题目要求的,请将正确答案填在括号内,多选、少选或错选均不得分)1.以下属于C语言基本数据类型的有()A.intB.floatC.doubleD.charE.void2.以下关于运算符优先级的说法,正确的有()A.算术运算符优先级高于关系运算符B.赋值运算符优先级最低C.逻辑运算符优先级高于算术运算符D.括号可以改变运算符的优先级E.单目运算符优先级高于双目运算符3.以下能正确输入一个整数的函数有()A.scanf("%d",&a);B.getchar();C.printf("%d",a);D.scanf("%ld",&a);E.gets(str);4.以下关于数组的初始化,正确的有()A.inta[5]={1,2,3};,则a[3]和a[4]的值为0B.inta[]={1,2,3};,数组长度为3C.chara[5]="abc";,数组长度为5D.inta[5]={1,2,3,4,5};,初始化完整E.inta[5]={1,2,3,4,5,6};,会报错5.以下关于函数的参数传递,正确的有()A.值传递时,形参的改变不会影响实参B.地址传递时,形参的改变会影响实参C.数组作为函数参数传递时,传递的是数组的首地址D.函数参数传递只能是值传递和地址传递E.结构体作为函数参数传递时,只能采用值传递三、判断题(总共10题,每题2分,请判断以下说法的对错,在括号内打“√”或“×”)1.C语言程序总是从main函数开始执行。()2.变量必须先定义后使用。()3.表达式5>3>1的值为真。()4.数组名是一个指针常量,不能进行自增自减操作。()5.函数定义中,形参变量只有在被调用时才分配内存单元。()6.指针变量可以指向函数。()7.字符串常量是用双引号括起来的字符序列。()8.结构体变量不能作为函数的返回值。()9.typedef不能定义结构体类型。()10.程序中注释越多越好。()四、程序填空题(总共3题,每题10分,请根据题目要求,在空白处填写合适的代码,使程序完整)1.编写一个函数,计算1到n的累加和,在主函数中输入n的值并调用该函数输出结果。```cinclude<stdio.h>intsum(intn){ints=0;for(inti=1;i<=n;i++){s+=i;}returns;}intmain(){intn;scanf("%d",&n);intresult=sum(n);printf("1到%d的累加和为:%d\n",n,result);return0;}```2.编写一个函数,判断一个整数是否为素数,在主函数中输入一个整数并调用该函数输出判断结果。```cinclude<stdio.h>include<math.h>intisPrime(intn){if(n<=1)return0;for(inti=2;i<=sqrt(n);i++){if(n%i==0)return0;}return1;}intmain(){intnum;scanf("%d",&num);if(isPrime(num)){printf("%d是素数\n",num);}else{printf("%d不是素数\n",num);}return0;}```3.编写一个程序,输入一个字符串,将其逆序输出。```cinclude<stdio.h>include<string.h>intmain(){charstr[100];scanf("%s",str);intlen=strlen(str);for(inti=len-1;i>=0;i--){printf("%c",str[i]);}printf("\n");return0;}```五、程序设计题(总共2题,每题15分,请根据题目要求,编写完整的C语言程序)1.编写一个程序,输入一个整数数组,计算数组中所有元素的平均值,并输出大于平均值的元素。```cinclude<stdio.h>intmain(){intn;scanf("%d",&n);intarr[n];for(inti=0;i<n;i++){scanf("%d",&arr[i]);}intsum=0;for(inti=0;i<n;i++){sum+=arr[i];}floatavg=(float)sum/n;printf("平均值为:%.2f\n",avg);for(inti=0;i<n;i++){if(arr[i]>avg){printf("%d",arr[i]);}}printf("\n");return0;}```2.编写一个程序,实现一个简单的学生信息管理系统。学生信息包括学号、姓名、成绩。要求实现添加学生信息、删除学生信息、修改学生成绩、查询学生信息等功能。```cinclude<stdio.h>include<string.h>defineMAX100typedefstruct{intid;charname[20];floatscore;}Student;Studentstudents[MAX];intcount=0;voidaddStudent(){if(count<MAX){printf("请输入学号:");scanf("%d",&students[count].id);printf("请输入姓名:");scanf("%s",students[count].name);printf("请输入成绩:");scanf("%f",&students[count].score);count++;printf("学生信息添加成功\n");}else{printf("学生信息已满,无法添加\n");}}voiddeleteStudent(){intid;printf("请输入要删除的学号:");scanf("%d",&id);for(inti=0;i<count;i++){if(students[i].id==id){for(intj=i;j<count-1;j++){students[j]=students[j+1];}count--;printf("学生信息删除成功\n");return;}}printf("未找到该学号的学生信息\n");}voidmodifyScore(){intid;printf("请输入要修改成绩的学号:");scanf("%d",&id);for(inti=0;i<count;i++){if(students[i].id==id){printf("请输入新的成绩:");scanf("%f",&students[i].score);printf("学生成绩修改成功\n");return;}}printf("未找到该学号的学生信息\n");}voidqueryStudent(){intid;printf("请输入要查询的学号:");scanf("%d",&id);for(inti=0;i<count;i++){if(students[i].id==id){printf("学号:%d,姓名:%s,成绩:%.2f\n",students[i].id,students[i].name,students[i].score);return;}}printf("未找到该学号的学生信息\n");}intmain(){intchoice;while(1){printf("\n学生信息管理系统\n");printf("1.添加学生信息\n");printf("2.删除学生信息\n");printf("3.修改学生成绩\n");printf("4.查询学生信息\n");printf("5.退出\n");printf("请选择:");scanf("%d",&choice);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年安徽省天长市初中历史七年级期末下册模考全真模拟题(详细参考解析)
- 桥梁日常巡检工安全操作规程
- 2026年职业技能鉴定考试(公路养护工-高级技师)历年参考题库含答案详解
- 2026年湖北省综合评标评审专家库专家考试历年参考题库含答案详解
- 场馆水暖维修工安全操作规程
- 2026学年广东省湛江市六年级语文期末高分高频题(附答案)详细答案和解析
- Oracle笔试面试试题+护师模拟试卷(含详细答案解析)
- 2026年全国法制宣传日法律知识竞赛题库及答案
- 边坡治理BIM建模应用方案
- 数据中心环境监测系统调试方案
- 2026年高压电工断路器保护配置考核试题附答案
- 化工企业环保培训课件
- 《浙江省中药饮片炮制规范》 2015年版
- 园林绿化养护质量保证措施方案
- 人工智能在药品配送领域的应用前景
- 苏州工业园区公共卫生中心项目施工组织设计
- GB/T 44317-2024热塑性塑料内衬油管
- DBJ50-T-271-2017 城市轨道交通结构检测监测技术标准
- 六家煤矿0.9Mta新井设计
- 利率报备数据采集制度2021版
- 运动骨关节病学智慧树知到课后章节答案2023年下同济大学
评论
0/150
提交评论