安徽大学C语言期末试卷含答案_第1页
安徽大学C语言期末试卷含答案_第2页
安徽大学C语言期末试卷含答案_第3页
安徽大学C语言期末试卷含答案_第4页
安徽大学C语言期末试卷含答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、安徽大学 C 语言程序设计期末试题一. 单项选择题: (每题 2分,共 20分)1 .执行程序:int a; printf(%d n, (a=3*5, a*4, a+5);后,a 的值是。A) 60B) 20C) 15D) 102 .程序段:int x=023; printf(%d n, -x );的输出是。A) 19B) 18C) 23D) 223.程序段:static char s10=C,h,i,n,a; printf(%dn,strlen(s)的输出是data.a D) (*p).data.aFILE *fp;10 .以二进制只读方式打开一个已有的文本文件巾lei,正确调用fopen函

2、数的方式是(yz?y:z)?x:(yz?y:z); 3. void funs3( int num口,int size ) int i=0, tmp;while( i=a&*ps=0&*ps=9)a2+;P+;printf(%d,%d n”,a1, a2); 四.程序分析题(每题2分,共10分)阅读程序,将其运行结果填在答题卡相应题目的横线上。答在 试卷上不得分。1. #include stdio.hvoid main() static int a=1,2,3,4,5,6,*p;p=a; *(p+3)+=2;printf(%d,%dn,*p,*(p+3);2. #include stdio.hv

3、oid main() int x=1;int x=2;int x=3; printf(%2d,x);printf(%2d,x);3. #include #include void sort( char *str, int n)char *tmp; int i,j;for( i=0; in-1; i+ )for( j=0; j0)tmp=strj, strj=strj+1, strj+1=tmp; void main() char *ps,*str3= BOOK , COMPUTER , CHINA ; int i;ps=str; sort(ps,3);for(i=0; i3; i+) prin

4、tf(%d %s ,i+1, stri); 4. #include int leap_year(int year)return year%4=0 & year%100!=0 | year%400=0; void main()int month_day=31,28,31,30,31,30,31,31,30,31,30,31 , days,i;struct date int year;int month;int day;mdate=2008,5,1;if(leap_year(mdate.year)month_day1+;for(i=1,days=mdate.day;imdate.month;i+)

5、days+=month_dayi-1;printf(%d-%d is the %dth day in %d,mdate.month,mdate.day,days,mdate.year); 5. #include void add( int *x, int *y, int n)while(n-) *x+ += *y+; void main()int i=5; static int s1=2, 1,0, 3, 2, s25;add(s2, s1, 5);while(i-) printf(%2d, s2i);五.程序设计题(每题10分,共40分)C阅读下列程序,在指定位置上填入适当的内容使程序完整。

6、请勿改动其它内容。请将正确答案填在答题卡上。答在试卷上不得分。1.函数insert将一个指定的单精度数按递减规律插入数组num中,注:数组num中已有12个按照递减顺序排好序的单精度数。void insert( float num13 float new ) int i=11;/*answer begin*/*answer end*/ 2 .编写函数mycmp实现库函数strcmp的功能:两个字符串的比较int mycmp(char *p1,char *p2) /*answer begin*/*answer end*/ 3设有三个候选人,每次输入一个得票的候选人的名字,要求最后输出各人得票结果

7、。#include struct person char name20;int count;leader3= “ Li ” ,0, “ Zhang ” ,0, ” Wang“ ,0; main() int i,j; char leader_name20;for(i=1;i=10;i+)/*answer begin*/*answer end*/for(i=0; i3;i+)printf(%5s:%dn”,,leaderi.count);)4.从键盘上输入一个字符串,将其中的小写字母转换成大写字母,然后输出到名为“ test的文本文件中保存。输入字符串以“! ”结束。#in

8、clude void main()int i; char str80; FILE *fp;if( (fp=fopen(test,w)=NULL) printf(cannot open filen);exit(0); )printf(Input a string(end with !):);gets(str);/*answer begin*/*answer end*/1 .单项选择题:(每题2分,共20分)CBBCB BACBA2 .填空题:(每题2分,共20分)1函数说明2函数体3长整型4无符号型506 非 07 switch8 循环9 extern10static11 #include12

9、#define13 &x2314 x3215616 217文本 18二进制19字符(字节)20流式3 .程序归纳题(每题2分,共10分)1求字符串长度 2求3个double型数中的大数3翻转整型数组4复制字符串5统计指定字符串中小写字母、数字的个数4 .程序分析题(每题2分,共10分)1 1,623 2 13 1 BOOK 2 CHINA 3 COMPUTER 4 5-1 is the 122th day in 20085 2 3 0 1 2注:标点符号错误不另扣分5 .程序设计题(每题10分,共40分)1. num12=new;存储新值:2 分while( i=0 & datai datai+1)循环至插入点:2 分复合语句:1分new=numi+1;暂存新值:1分numi+1=numi;更新旧值:2分numi=new;更新新值:1分i-;循环计数:1分2. while(*p1&*p2&*p1=*p2)依次比较两个字符串直至其结束:6分p1+,p2+;更新位置指示:2分return *p1-*p2;返回差值:2 分3. scanf(%s,lead

温馨提示

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

评论

0/150

提交评论