版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、安徽大学20_-20学年第学期C语言程序设计期末考试试卷(B卷120分钟)年级院系专业姓名学号座位号题号一一二四五六七八得分得分得分单项选择题:(每题2分,共20分)下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确选项填在答题卡相应题目的横线上。答在试卷上不得分。1.执行程序:inta;printf("%dn",(a=3*5,a*4,a+5);后,a的值是。A)60B)20C)15D)102.程序段:intx=023;printf("%dn",-x);的输出是。C) 23D)printf("%dn",strlen(s
2、);C) 11D)A)19B)18223.程序段:staticchars10='C','h','i','n','a'的输出是。A)6B)5104 .若fun(intx)printf(n”",d|SUfun?A)返回值为void类型B)返回值类型无法确定C)返回值为int类型D)没有返回值5 .有宏定义:#defineMULT1(a,b)a*b#defineMULT2(a,b)(a)*(b)且引用宏:y=MULT1(3+2,5+8);z=MULT2(3+2,5+8);则y和z的值是A)y=65,z=65B)
3、y=21,z=65C)y=65,z=21D)y=21,z=216 .程序段chars="Hello",*p;p=s;执行后,*(p+5)的值是。A)'o'B)'0'C)'o'的地址D)不确定的值7 .程序段:char*s="ABCD*p;for(p=s;*p;p+)printf("%sn",p);的输出D) ABCDCBA)ABCDB)AC)DBCDBABCCDCABDDA8.若定义:int(*p)3;则标识符p。A)定义不合法。B)是一个指针数组名,每个元素是一个指向整型变量的指针。C)是一个指
4、针,它指向一个具有三个元素的一维数组。D)是一个指向整型变量的指针。9.定义:structskinta;floatb;data,*p;且p=&data;则正确引用成员a的方式是A) p.data.aB) (*p).a(*p).data.a10以二进制只读方式打开一个已有的文本文件A) FILE *fp;fp=fopen("file1","rb");C) FILE *fp;fp=fopen("file1","r");fp=fopen("file1","rb+");C)
5、p->data.a D)file1,正确调用fopen函数的方式是B) FILE *fp;fp=fopen("file1","r+");D) FILE *fp;二.填空题:(每空1分,共20分)请将正确答案填在答题卡相应题目的横线上。答在试卷上不得分。1 .c程序一个函数的定义由?口网部分组成。2 .C语言的整型变量可分为基本型、短整型、?口o3 .C语言在判断一个量是否为“真”时,以代表“假”,以代表04 .C语言中的break语句只能用于?口语句。5 .又t?口型数组不赋初值,系统会对所有元素自动赋以0值。6 .C语言中“文件包含”是通过命令完
6、成的,而符号常量是通过命令定义的。7 .对于数组x55,*(x+2)+3表示,*(x3+2)表示。8 .若定义:structinty,m,d;today,*pdata则为today分配内存字节,为pdata分配内存字节。9 .C语言文件按数据的存放形式可分为文件和文件。1 0.C语言文件是一个序列,这类文件称为文件。得分三.程序归纳题(每题2分,共10分)阅读下列函数,总结其主要功能填在答题卡相应的横线上。答在试卷上不得分1. intfun1(char*str)char*ptr=str;while(*ptr+);returnptr-str-1;2. doublefun2(doublex,dou
7、bley,doublez)returnx>(y>z?y:z)?x:(y>z?y:z);3. voidfuns3(intnum口,intsize)inti=0,tmp;while(i<size/2)tmp=numi,numi=numsize-i-1,numsize-i-1=tmp,i+;4. voidfun4(char*f,char*t)for(;*f!='0'f+,t+)*t=*f;*t='0'5. voidfun5(char*ps)inta1=0,a2=0;while(*ps!='0')if(*ps>='a
8、'&&*ps<='z')a1+;elseif(*ps>='0'&&*ps<='9')a2+;P+;printf("%d,%dn",a1,a2);得分四.程序分析题(每题2分,共10分)阅读程序,将其运行结果填在答题卡相应题目的横线上。答在试卷上不得分1. #include"stdio.h"voidmain()staticinta=1,2,3,4,5,6,*p;p=a;*(p+3)+=2;printf("%d,%dn",*p,*(p
9、+3);2. #include"stdio.h"voidmain()intx=1;intx=2;intx=3;printf("%2d”,x);printf("%2d”,x);printf("%2d”,x);3. #include<stdio.h>#include<string.h>voidsort(char*str,intn)char*tmp;inti,j;for(i=0;i<n-1;i+)for(j=0;j<n-i-1;j+)if(strcmp(strj,strj+1)>0)tmp=strj,strj
10、=strj+1,strj+1=tmp;voidmain()char*ps,*str3="BOOK","COMPUTER","CHINA"inti;ps=str;sort(ps,3);for(i=0;i<3;i+)printf("%d%s",i+1,stri);4. #include<stdio.h>intleap_year(intyear)returnyear%4=0&&year%100!=0|year%400=0;voidmain()intmonth_day=31,28,31,3
11、0,31,30,31,31,30,31,30,31,days,i;structdateintyear;intmonth;intday;mdate=2008,5,1;if(leap_year(mdate.year)month_day1+;for(i=1,days=mdate.day;i<mdate.month;i+)days+=month_dayi-1;printf("%d-%disthe%dthdayin%d",mdate.month,mdate.day,days,mdate.year);5. #include<stdio.h>voidadd(int*x,
12、int*y,intn)while(n-)*x+=*y+;voidmain()inti=5;staticints1=2,1,0,3,2,s25;add(s2,s1,5);while(i-)printf("%2d”,s2i);五.程序设计题(每题10分,共40分)阅读下列程序,在指定位置上填入适当的内容使程序完整。请勿改动其它内容。请将正确答案填在答题卡上。答在试卷上不得分。1.函数insert将一个指定的单精度数按递减规律插入数组num中,注:数组num中已有12个按照递减顺序排好序的单精度数。voidinsert(floatnum13,floatnew)inti=11;/*answe
13、rbegin*/*answerend*/2 .编写函数mycmp实现库函数strcmp的功能:两个字符串的比较。intmycmp(char*p1,char*p2)/*answerbegin*/*answerend*/3 .设有三个候选人,每次输入一个得票的候选人的名字,要求最后输出各人得票结果。#include<string.h>structpersoncharname20;intcount;leader3=“Li”,0,“Zhang',0,"Wang”,0;main()inti,j;charleader_name20;for(i=1;i<=10;i+)/*
14、answerbegin*/*answerend*/for(i=0;i<3;i+)printf("%5s:%dn",,leaderi.count);4 .从键盘上输入一个字符串,将其中的小写字母转换成大写字母,然后输出到名为“test'的文本文件中保存。输入字符串以“!”结束。#include<stdio.h>voidmain()inti;charstr80;FILE*fp;if(fp=fopen("test","w")=NULL)printf("cannotopenfilen
15、");exit(0);printf("Inputastring(endwith!):");gets(str);/*answerbegin*/*answerend*/参考答案:单项选择题:(每题2分,共20分)CBBCBBACBA二.填空题:(每题2分,共20分)1函数说明2函数体36非07 switch8static11 #include12#define 13616 217文本20流式长整型 4无符号型5 0循环 9 extern 10&x23 14x321518 二进制 19字符(字节)三.程序归纳题(每题2分,共10分)1求字符串长度2求3个doub
16、le型数中的大数3翻转整型数组4复制字符串5统计指定字符串中小写字母、数字的个数四.程序分析题(每题2分,共10分)11,6232131BOOK2CHINA3COMPUTER45-1isthe122thdayin2008523012注:标点符号错误不另扣分五.程序设计题(每题10分,共40分)1. num12=new;存储新值:2分while(i>=0&&datai<datai+1)循环至插入点:2分复合语句:1new=numi+1;numi+1=numi;numi=new;更新新值:1分i-;暂存新值:1分更新旧值:2分循环计数:1分2. while(*p1&&*p2&&*p1=*p2)依次比较两个字符串直至其结束:6分p1+,p2+;更新位置指示:2分return*p1-*p2;返回差值:2分3. scanf("%s”,leader_name);for(j=0;j<3;j+)唱票:2分循环寻找得票人:2分if(strcmp(leader_name,leaderj.nam
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行政通知装修合同范本
- 续订劳动合同续签协议
- 药企合同补充协议范本
- 货物出口保险合同范本
- 药品代理合同协议范本
- 灯具清算不算合同范本
- 闽侯金融贷款合同范本
- 3.9 中世纪城市和大学的兴起 教学设计 2024-2025学年统编版九年级历史上册
- 网架安装服务合同范本
- 第五课 形状补间动画教学设计-2025-2026学年初中信息技术教科版八年级下册-教科版
- 提升工作质量的方法
- 【公开课教案】《蹲踞式起跑》教案
- 2019汇总-历年爆破工程技术人员考试C中级原题考题
- 护士面试自我介绍【合集11篇】
- 钢结构厂房施工组织设计含土建
- 11维修设备设施情况
- 中国红十字会总会卫生网络管理系统开发及系统集成项目技术方案
- 四年级上册美术课件-12给同学画漫画 |浙美版
- GB/T 7252-2001变压器油中溶解气体分析和判断导则
- GB/T 32201-2015气体流量计
- GB/T 1527-2017铜及铜合金拉制管
评论
0/150
提交评论