书签 分享 收藏 举报 版权申诉 / 13
上传文档赚钱

类型广州大学2020-2021学年第1学期《C语言程序设计》期末考试试卷(A卷)及标准答案.pdf

  • 上传人(卖家):奋斗的小小
  • 文档编号:5351648
  • 上传时间:2023-03-27
  • 格式:PDF
  • 页数:13
  • 大小:204.87KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《广州大学2020-2021学年第1学期《C语言程序设计》期末考试试卷(A卷)及标准答案.pdf》由用户(奋斗的小小)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    C语言程序设计 广州大学 2020 2021 学年 学期 语言程序设计 期末考试 试卷 标准答案
    资源描述:

    1、第 1 页 共 13 页广州大学 20202021 学年第 1 学期C 语言程序设计考试试卷(语言程序设计考试试卷(A 卷)卷)考试范围:C 语言程序设计;满分:100分;考试时间:120 分钟院/系:_专业:_姓名:_ 考号:_题号一二三四总分得分注意事项:1答题前填写好自己的姓名、班级、考号等信息2请将答案正确填写在答题卡上第第 I 卷(选择题)卷(选择题)评卷人得分一、选择题(共一、选择题(共 20 题,每题题,每题 2 分,共分,共 40 分。下列每小题的四个选分。下列每小题的四个选项中,有一项是最符合题意的,错选、多选或未选均无分)项中,有一项是最符合题意的,错选、多选或未选均无分)

    2、1若有定义:char*ps=aa,bb,cc,dd;,则以下叙述正确的是()。Aps是字符串aaB*ps 是字符串aa的首地址Cps是字符串aa的首地址D*ps 是字符串aa2有以下程序#includevoid fun(char*c,int d)c=c+1;d=d+1;printf(%c,%c,*c,d);main()char b=a,a=A;fun(&b,a);printf(%c,%cn,b,a);程序运行后的输出结果是()。Ab,B,b,A第 2 页 共 13 页Bb,B,B,ACa,B,B,aDa,B,a,B3有以下程序:#includemain()int s=1,2,3,4,5,6,*

    3、ps,k;for(k=0;k3;k+)ps=s;printf(%d,*(ps+1);程序的运行结果是()。A246B135C123D4564有以下程序#include void f(int*q)int i=0;for(;i5;i+)(*q)+;main()int a=1,2,3,4,5,i;f(a);for(i=0;i5;i+)printf(%d,a);程序运行后的输出结果是()。A2,2,3,4,5,B6,2,3,4,5,C1,2,3,4,5,D2,3,4,5,6,5已定义以下函数int fun(int*p)return*p;fun 函数返回值是()。A一个整数第 3 页 共 13 页B不确

    4、定的值C形参 p 中存放的值D形参 p 的地址值6以下叙述中错误的是()。A当在程序的开头包含头文件 stdio.h 时,可以给指针变量赋 NULLB函数可以返回地址值C改变函数形参的值,不会改变对应实参的值D可以给指针变量赋一个整数作为地址值7设有如下函数定义:int fun(int k)if(k1)return 0;else if(k=1)return 1;else return fun(k-1)+1;若执行调用语句:n=fun(3);,则函数 fun()总共被调用的次数是()。A2B3C4D58有以下程序#include int f(int n)int t=0,a=5;if(n/2)in

    5、t a=6;t+=a+;elseint a=7;t+=a+;return t+a+;main()int s=0,i=0;for(;i2;i+)s+=f(i);printf(%dn,s);程序运行后的输出结果是()。第 4 页 共 13 页A24B28C32D369以下不能对文件进行输出的库函数是()。AfwriteBfputsCfpoutDfprintf10字符数组 a 和 b 中存储了两个字符串,判断字符串 a 和 b 是否相等,应当使用的是()。Aif(strcmp(a,b)=0)Bif(strcpy(a,b)Cif(a=b)Dif(a=b)11有以下程序#includemain()int

    6、 a=1,2,3,4,5,b=0,2,1,3,0,i,s=0;for(i=0;i5;i+)s=s+a;printf(%dn,s);程序运行后的输出结果是()。A6B10C11D1512有以下程序:#include void fun(int a,int n)int i;for(i=0;in;i+)if(i%3=0)a-=n;elsea+=n;第 5 页 共 13 页main()int c=6,7,8,9,10,i;fun(c,5);for(i=0;i5;i+)printf(%d,c);printf(n);程序运行后的输出结果是()。A1,12,13,4,15,B10,9,8,7,6,C1,7,1

    7、3,9,15,D10,12,8,4,6,13若有以下程序#include main()int a=-2,b=0;while(a+)+b;printf(%d,%dn,a,b);则程序的输出结果是()。A1,2B0,2C1,3D2,314若有以下程序#include main()int s=0,n;for(n=0;n4;n+)switch(n)default:s+=4;case 1:s+=1;break;case 2:s+=2;break;case 3:s+=3;printf(%dn,s);则程序的输出结果是()。A13B10第 6 页 共 13 页C11D1515执行以下程序段后,w的值为()。

    8、int w=A,x=14,y=15;w=(x|y)&(wa);A-1BNULLC1D016有以下程序段#includemain()int j;float y;char name;scanf(%2d%f%s,&j,&y,name);当执行上述程序段,从键盘上输入 55566 7777123 后,y 的值为()。A566.0B55566.0C7777.0D566777.017若有定义语句double x,y,*px,*py;执行了 px=&x;py=&y;之后,输入语句正确的是()。Ascanf(%f%f,x,y);Bscanf(%f%f&x,&y);Cscanf(%1f%1e,px,py);Ds

    9、canf(%1f%1f,x,y);18以下选项中关于程序模块化的叙述错误的是()。A把程序分成若干相对独立的模块,可便于编码和调试B把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块C可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序D可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序19有以下程序:#include typedef struct stuchar name;char gender;int score;STU;第 7 页 共 13 页void f(STU a,STU*b)*b=a;printf(%s,%c,%d,b-name,b-gen

    10、der,b-score);main()STU a=Zhao,m,290,b=Qian,f,350;f(a,&b);printf(%s,%c,%dn,b.name,b.gender,b.score);程序运行后的输出结果是()。AZhao,m,290,Qian,f,350BQian,m,290,Zhao,m,290CQian,f,350,Qian,f,350DZhao,m,290,Zhao,m,29020有以下程序:#include#includemain()char w,a=abcdef,ghijkl,mnopq,rstuv,wxyz.;int i;for(i=0;i5;i+)w=a)-1;w

    11、=0;puts(w);Aflqv.BagmrwCekpuyDflqvz第第 II 卷(非选择题)卷(非选择题)评卷人得分二、填空题(共二、填空题(共 3 题,每题题,每题 8 分,共分,共 24 分)分)21下面程序的功能是从键盘输入一个字符串,然后反序输出输入的字符串。#include struct nodechar data;第 8 页 共 13 页struct node*link;*head;main()char ch;struct node*p;head=NULL;while(ch=getchar()!=n)p=(struct node*)malloc(sizeof(struct no

    12、de);p-data=ch;p-link=;head=;while(p!=NULL)printf(%c,p-data);p=p-link;22有以下程序段:s=1.0;for(k=1;k=n;k+)s=s+1.0/(k*(k+1);printf(%fn,s);填空完成下述程序,使之与上述程序的功能完全相同。s=0.0;k=0;dos=s+d;d=1.0/(k*(k+1);while();printf(%fn,s);23下面程序的功能是从键盘上输入两个字符串,对两个字符串分别排序;然后将它们合并,合并后的字符串按 ASCII 码值从小到大排序,并删去相同的字符。#include strmerge

    13、(a,b,c)/*将已排好序的字符串 a、b 合并到 c*/char*a,*b,*c;char t,*w;w=c;第 9 页 共 13 页while(*a!=0 *b!=0)t=?*a+:*b*a?*b+:();/*将*a、*b 的小者存入 t*/if(*w 0)*w=t;else if(t *w)*+w=t;/*将与*w 不相同的 t 存入 w*/while(*a!=0)/*以下将 a 或 b 中剩下的字符存入 w*/if(*a!=*w)*+w=*a+;else a+;while(*b!=0)if(*b!=*w)*+w=*b+;else b+;*+w=;strsort(char*s)/*将字

    14、符串 s 中的字符排序*/int i,j,n;char t,*w;for(n=0;*w!=0;)w+;for(i=0;in-1;i+)for(j=i+1;jsj)main()char s1100,s2100,s3200;printf(nPlease Input First String:);scanf(%s,s1);printf(nPlease Input Second String:);scanf(%s,s2);strsort(s1);strsort(s2);=0;strmerge(s1,s2,s3);printf(nResult:%s,s3);评卷人得分三、改错题(共三、改错题(共 1 题

    15、,每题题,每题 16 分,共分,共 16 分)分)第 10 页 共 13 页24请根据以下各小题的要求设计 C应用程序(包括界面和代码)。下列给定的程序中,函数 fun 的功能是:把主函数中输入的 3 个数,最大的放在 a 中,最小的放在 c中。例如,输入的数为 55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。请改正程序中的错误,使它能得到正确结果。注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构。试题程序如下:#include#include void fun(floatp,floatq,float*s)float*k;k=(float*)ma

    16、lloc(sizeof(float);if(*p*q)/*found*/k=*p;p=q;*q=k;/*found*/if(*s*p)/*found*/k=*s;s=p;*p=k;if(*q*s)/*found*/k=*q;q=s;*s=k;free(k);main()float a,b,c;printf(Input a b c:);scanf(%f%f%f,&a,&b,&c);printf(a=%4.1f,b=%4.1f,c=%4.1fnn,a,b,c);fun(&a,&b,&c);第 11 页 共 13 页printf(a=%4.1f,b=%4.1f,c=%4.1fnn,a,b,c);评卷

    17、人得分四、设计题(共四、设计题(共 1 题,每题题,每题 20 分,共分,共 20 分)分)25请根据以下要求设计 C应用程序。请编写函数 fun,它的功能是:统计各年龄段的人数。N 个年龄通过调用随机函数获得,并放在主函数的 age 数组中;要求函数把 0 至 9 岁年龄段的人数放在 d 中,把 10 至 19 岁年龄段的人数放在 d 中,把 20 至 29 岁年龄段的人数放在 d 中,其余依次类推,把 100 岁(含100 岁)以上年龄的人数放在 d 中。结果在主函数中输出。注意:部分源程序给出如下。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的

    18、若干语句。试题程序如下:#include#define N 50#define M 11void fun(inta,intb)double rnd()static int t=29,c=217,m=1024,r=0;r=(r*t+c)%m;return(double)r/m);main()int age,i,d;for(i=0;i N;i+)age=(int)(115*rnd();printf(The original data:n);for(i=0;i N;i+)printf(i+1)%10=0?%4dn:%4d,age);printf(nn);fun(age,d);for(i=0;i 10

    19、;i+)printf(%4d-%4d:%4dn,i*10,i*10+9,d);printf(Over 100:%4dn,d);第 12 页 共 13 页【标准答案】第第 I 卷(选择题)卷(选择题)一、选择题(共一、选择题(共 20 题,每题题,每题 2 分,共分,共 40 分。下列每小题的四个选项中,有一项是最符合题分。下列每小题的四个选项中,有一项是最符合题意的,错选、多选或未选均无分)意的,错选、多选或未选均无分)1C2A3A4B5A6D7B8A9C10A11C12A13A14C15C16A17C18C19D20A第第 II 卷(非选择题)卷(非选择题)二、填空题(共二、填空题(共 3

    20、题,每题题,每题 8 分,共分,共 24 分)分)21 head p p=head22 d=1 k+k=n23&*a*b *a+,*b+=第 13 页 共 13 页!=0 w=s n+t=si;si=sj;sj=t;s30三、改错题(共三、改错题(共 1 题,每题题,每题 16 分,共分,共 16 分)分)24(1)错误:k=*p;p=q;*q=k;正确:*k=*p;*p=*q;q=k;(2)错误:if(*s*p)(3)错误:k=*s;s=p;*p=k;正确:*k=*8;s=p;p=k;(4)错误:k=*q;q=s;*s=k;正确:*k=*q;q=s;s=k;四、设计题(共四、设计题(共 1 题,每题题,每题 20 分,共分,共 20 分)分)25void fun(inta,intb)int i,j;for(j=0;jM;j+)b=0;for(i=0;iN;i+)switch(a/10)case 0:b+;break;case 1:b+;break;case 2:b+;break;case 3:b+;break;case 4:b+;break;case 5:b+;break;case 6:b+;break;case 7:b+;break;case 8:b+;break;case 9:b+;break;default:b+;break;

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:广州大学2020-2021学年第1学期《C语言程序设计》期末考试试卷(A卷)及标准答案.pdf
    链接地址:https://www.163wenku.com/p-5351648.html
    奋斗的小小
         内容提供者      个人认证 实名认证

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库