版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年南京信息工程大学试卷C语言和程序设计基础试卷附答案一、单项选择题(每题2分,共20分)1.以下选项中,合法的C语言长整型常量是()。A.123456LB.123456C."123456"D.123.456L2.若定义inta=7,b=5,c=3;则表达式(a>b)==c的值为()。A.0B.1C.7D.33.设有定义chars[20]="hello\0world";则strlen(s)的结果是()。A.5B.6C.10D.114.执行以下程序段后,变量x的值为()。intx=10;while(x--);x++;A.0B.-1C.1D.105.若有函数声明voidfun(intp);则以下调用方式正确的是()。A.fun(100);B.fun(&100);C.inta;fun(a);D.inta;fun(&a);6.定义structStudent{charname[10];intage;floatscore;}stu;则sizeof(stu)的值是()(假设int占4字节,float占4字节,char数组按实际存储)。A.18B.17C.16D.147.以下关于C语言文件操作的描述,错误的是()。A.fopen()函数的第二个参数用于指定文件打开方式B.文本文件和二进制文件的存储方式不同C.fgets()函数可以读取包含空格的字符串D.文件操作完成后不需要关闭文件,程序结束会自动关闭8.设有定义inta[5]={1,3,5,7,9},p=a+2;则(p+1)的值是()。A.5B.7C.9D.39.以下能正确计算1!+2!+…+n!的循环结构是()。A.intsum=0,fac=1;for(inti=1;i<=n;i++){fac=i;sum+=fac;}B.intsum=0,fac=1;for(inti=1;i<=n;sum+=fac,i++){fac=i;}C.intsum=0,fac=1;for(inti=1;i<=n;fac=i,i++)sum+=fac;D.intsum=0,fac=1;for(inti=1;fac=i,i<=n;sum+=fac);10.以下关于指针的描述,正确的是()。A.指针变量只能存储地址B.两个指针变量可以直接相加C.空指针指向内存的0地址,因此可以解引用D.数组名是一个指向数组首元素的指针常量,其值可以修改二、填空题(每空2分,共10分)1.若定义floatx=3.1415926;则执行printf("%.3f",x);的输出结果是______。2.执行以下程序段后,变量k的值是______。intk=0;for(inti=1;i<=5;i++){for(intj=1;j<=i;j++){if(j%2==0)k++;}}3.若有定义charstr[]="Nanjing";则str[3]的值是______(用ASCII码或字符表示)。4.函数调用时,实参和形参之间的数据传递方式是______(填"值传递"或"地址传递")。5.设有定义intp=(int)malloc(sizeof(int));则需要包含的头文件是______。三、程序改错题(每题5分,共10分。指出错误位置并给出正确代码)1.以下程序试图计算两个整数的和,存在两处错误。include<stdio.h>voidmain(){inta,b,sumscanf("%d%d",a,b);sum=a+b;printf("sum=%d\n",sum);}2.以下程序试图输出1-100中能被3或5整除的数,存在一处逻辑错误。include<stdio.h>voidmain(){for(inti=1;i<=100;i++){if(i%3==0&&i%5==0)printf("%d",i);}}四、程序分析题(每题8分,共16分。写出程序运行结果)1.分析以下程序的运行结果。include<stdio.h>voidfun(intx){if(x/2>0)fun(x/2);printf("%d",x%2);}voidmain(){fun(10);}2.分析以下程序的运行结果。include<stdio.h>voidmain(){inta[5]={2,4,6,8,10};intp=a;intsum=0;for(inti=0;i<5;i++){sum+=(p+i);if(i%2==1)(p+i)=sum;}for(inti=0;i<5;i++)printf("%d",a[i]);}五、编程题(第1题14分,第2题20分,共34分)1.编写程序:从键盘输入一个字符串(长度不超过50),统计其中大写字母、小写字母、数字字符和其他字符的个数。要求使用循环遍历字符串,不能使用库函数统计(如isalpha()等)。2.定义结构体类型Book,包含以下成员:书号(char[10])、书名(char[20])、价格(float)。编写程序实现以下功能:(1)从键盘输入3本图书的信息;(2)计算并输出3本书的平均价格;(3)查找并输出价格最高的图书信息(若有多个,输出第一个)。答案一、单项选择题1.A2.A3.A4.B5.D6.A7.D8.B9.A10.A二、填空题1.3.1422.6(i=2时j=2→k+1;i=3时j=2→k+1;i=4时j=2,4→k+2;i=5时j=2,4→k+2;总计1+1+2+2=6)3.'j'(索引从0开始,str[0]='N',str[1]='a',str[2]='n',str[3]='j')4.值传递5.stdlib.h三、程序改错题1.错误1:第4行"inta,b,sum"缺少分号,应改为"inta,b,sum;"错误2:第5行"scanf("%d%d",a,b)"缺少取地址符,应改为"scanf("%d%d",&a,&b);"2.逻辑错误:条件判断错误,题目要求能被3"或"5整除,原代码用了"&&"(与),应改为"||"(或),即"if(i%3==0||i%5==0)"四、程序分析题1.运行结果:1010(递归过程:fun(10)→x/2=5>0→fun(5)→x/2=2>0→fun(2)→x/2=1>0→fun(1)→x/2=0不递归,输出1%2=1;返回fun(2)输出2%2=0;返回fun(5)输出5%2=1;返回fun(10)输出10%2=0,最终顺序1010)2.运行结果:2662010(第一次循环i=0:sum=2,无修改;i=1:sum=2+4=6,修改a[1]=6;i=2:sum=6+6=12,无修改;i=3:sum=12+8=20,修改a[3]=20;i=4:sum=20+10=30,无修改。最终数组为[2,6,6,20,10])五、编程题1.参考代码:include<stdio.h>include<string.h>voidmain(){charstr[51];intupper=0,lower=0,digit=0,other=0;printf("请输入字符串:");gets(str);//实际使用需注意缓冲区溢出,此处简化处理for(inti=0;str[i]!='\0';i++){if(str[i]>='A'&&str[i]<='Z')upper++;elseif(str[i]>='a'&&str[i]<='z')lower++;elseif(str[i]>='0'&&str[i]<='9')digit++;elseother++;}printf("大写字母:%d\n小写字母:%d\n数字:%d\n其他:%d\n",upper,lower,digit,other);}2.参考代码:include<stdio.h>include<string.h>structBook{charnumber[10];charname[20];floatprice;};voidmain(){structBookbooks[3];floattotal=0,max_price=-1;intmax_index=0;//输入数据for(inti=0;i<3;i++){printf("请输入第%d本书的信息(书号书名价格):",i+1);scanf("%s%s%f",books[i].number,books[i].name,&books[i].price);total+=books[i].price;//同时查找最高价if(books[i].price>max_price){max_price=books[i].price;max
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年河南经贸职业学院单招职业适应性考试模拟试题及答案解析
- 2026年黑龙江民族职业学院单招职业适应性测试模拟试题及答案解析
- 2026年江西艺术职业学院单招职业适应性测试模拟试题及答案解析
- 医疗资源分配的公平性与效率
- 校学生会下学期工作计划14篇
- 甲表面异常的护理
- 2026年教师资格证(小学-美术学科知识与教学能力)自测试题及答案
- 2025云南水务投资股份有限公司高校毕业生招聘7人备考笔试题库及答案解析
- 2025广西南宁市消防救援支队第四期政府专职消防员招聘80人模拟笔试试题及答案解析
- 2025江苏南京大学地理与海洋科学学院准聘长聘岗位(事业编制)招聘3人笔试备考试题及答案解析
- 北京四中八年级【元旦班会】2026马年新年ShowTime(模仿秀)
- 《土木工程专业英语 第2版》 翻译版 课件全套 鲁正 Unit 1 Introduction to Reinforced Concrete Design-Unit 5 Composite Construction
- 老年髋部骨折快速康复治疗
- 【初中地理】跨学科主题学习探 索外来食料作物的传播史课件-2024-2025学年七年级上学期(人教版2024)
- 四川省南充市2024-2025学年高一地理上学期期末考试试题含解析
- 安徒生童话《枞树》
- 化学品管理控制程序
- 探索·鄱阳湖智慧树知到期末考试答案2024年
- 二十世纪中国文学经典与电影智慧树知到期末考试答案2024年
- 劳务派遣安全知识培训课件
- 2024年殡葬服务项目创业计划书
评论
0/150
提交评论