《C语言程序设计基础》期末考试A卷及答案_第1页
《C语言程序设计基础》期末考试A卷及答案_第2页
《C语言程序设计基础》期末考试A卷及答案_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

第第5页共5页《C语言程序设计基础》课程期末考试试卷(A卷)班级 考试形闭卷 考试时120 分考试学期2020-2021学年第1学期 考试类型考试 命题教师

下列说法中不正确的( 。pa=&a,则printf("%0x",pa);输出的是变量apa=&a,则printf("%d",*pa)3pb=&b,则printf("%d",pb[3]3pb=bprintf("%d",pb[3]3若有声明“char*p=”12”;intc;”则执行语句“c=sizeof(p);”后,c的值( 。A.3 题号 一 二密 分值 30 20得分

三 四25 25

总分100

执行下列程序后for(inta=10;a>=0;a--){printf("hello\n");}hello被打印了多( )。A.打印11次 无限循环次 C.打印1次 一次也不打印一、单项选择题(每小题2分,共30分)下列不属于C语言基本数据类型的( 。A.int B.union C.char D.double在一个C程序( 。A.main封 B.main函数可以在任何地方出现C.main函数必须出现在所有函数之D.main函数必须出现在固定位置以下不正确的C语言标识符是( 。A.AB3C C._abc 设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( A.x&&y||x-y B.C.x||y+z&&y<z D.设有定义:structa{longintfloatd[3];线 charf[16];}a1;则printf("%d\n",sizeof(a1));的输出( 。A.44 C.12 6.已知一个二维数组inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};获取该数组中第二行第三列元素的语句表达正确的( 。A.a[2][3] B.a[2][4] C.a[1][2] D.a[3][2]7.设有:inta,*pa,*pb;intb[10]={0,1,2,3,4,5,6,7,8,9};a=3;

10.在C语言中,关于文件的打开模式,下列说法中正确( A."r",向文件中写入数据B."r+",打开一个已存在的文本文件,只能读不能写C."a",打开一个已存在的文本文件,向文件尾部追加(写)数据D."w",打开一个文本文件,读取里面的数据11.以下程序的输出结果( )。#include<stdio.h>intmain(){ inta=6;printf("ahello");return0;}A.ahello 若有一个函数的定义为voidsum(intx,int{函数体}下列说法中正确的( 。intxinty这个函数需要一个返回值这个函数不需要返回值这函数的返回值可以有也可以没有#include<stdio.h>voidmain(){inta=6,b=4;if(a>b)

}else{⑦{printf("%d",a); }}else }{printf("%d",b);}}下列说法中正确( 。64程序没有输出结果46下列说法中不正确的( A.在C语言中表示赋值在C在C表示乘法运算在C语言中算术运算符为模运算,表示的含义为整数取余15.下列关于C语言循环结构程序设计说法正确的( 。A.for循环语句能实现的程序功能不能使用while循环语句来实B.循环结构程序设计中可以使用break语句来强制中断当前循环体的执行,即跳出该层循环C.循环结构程序设计中不能嵌套if语句D.switch语句也是用来实现循环的二、填空题(每个空2分,共20分)1.C语言结构化程序设计中的三种基本结构是 ① 。2.假设有定义char则C语言中从键盘中接受一个字符可使用的语句为 ② 3.当a=5,b=4,c=2时,表达式a>b==c的值是 ③ 。设int则表达式a+b的数据类型是 ④ ,表达式的结果为 ⑤ 。组成三角形。如果可以输出YES,如果不能输出。#include<stdio.h>voidmain(){⑥ a,b,c;scanf("%f%f%f",&a,&b,&c);if((a+b>c)&&(a+c>b)&&(b+c>a)){printf("YES");

110#include<stdio.h>voidmain(){intsum=0;inta[10]={1,2,3,4,5,6,7,8,9,10};for(inti=0;i< ⑧ ;i++){sum= ⑨}printf("%d\n",sum);}在C语言中字符串在内存中所占的字节数为 ⑩ 个三、程序分析题,写程序运行结果(每个题5分,共25分)1.写出下面程序的运行结果#include<stdio.h>voidmain(){inti,j;for(i=4;i>=1;i--){ printf("*");for(j=1;j<=4-i;j++){printf("*");}printf("\n");}}#include<stdio.h>intmax(inta,intb){intc;c=a>b?a:b;returnc;}voidmain(){intz1=3,z2=5;printf("%d\n",max(z1,z2));}#include<stdio.h>#defineN2+10#definePI3.14#defineS(r)PI*r*rintmain(){floatt;t=N/6;printf("area=%f\n",S(2));printf("t=%f\n",t);return0;

printf("max=%d,min=%d\n",*p1,*p2);}四、编程题(共2个小题,总共25分,必要的地方写明注释)编写程序寻找1200515输出所有满足上述条件的数及它们和的计算结果()。要求:(1)说明程序的设计思路(可以使用伪代码、流程图或者文字说明的形式)(4分)(2)编写相应的实现的代码,必要的地方写明注释)2.1-71,输出Monday,输入2Tuesda(:SundayMondayWednesdayThursdayFriday(13)。要求:(1)说明程序的设计思路(可以使用伪代码、流程图或者文字说明的形式)(5分)(2)设计相应的实现代码,必要的地方写明注释(8)密封密封线#include<stdio.h>intmain(){inta=2,s=0,n=1,count=1;while(count<=5){n=n*a;s=s+n;count++;}printf("s=%d",s);return0;}12,13#include<stdio.h>voidmain(){int*p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a>b){p=p1;p1=p2;p2=p;}printf("a=%d,b=%d\n",a,b);2020—2021学年第一学期期末考试《C语言程序设计基础》试卷参考答案及评分标准考试专业 班级 考试形式闭卷 考试时间120分钟总分100 试卷卷闭卷) 考试类型笔试 命题教师一、单项选择题(每题只有一个正确答案,答对一题得2分,共30分)题号123456789101112131415答案BBDDACCBACACACB二、填空题(每题2分,共20分)①顺序结构、分支结构(或者选择结构)、循环结构②ch=getchar()scanf("%c",&ch)③0或者假④float5⑥float ⑦printf("NO");. 1分)6.⑧=9或者10⑨sum+a[i];. 不加分号扣1分)7.⑩6三、程序分析题,写程序运行结果(每个题5分,共25分)1.**********2.53.area=12.560000t=3.000000. (2.5分4.s=625.a=12,b=13

max=12,min=13 (2.5分)四、编程题(225分,必要的地方写明注释)能正确表达出题目的含义、要求,即可得分,部分正确可酌情按比例得分,否则不得分。11200515满足上述条件的数及它们和的计算结果(给出程序编写语句即可,不需要写出程序的运行结果)(12分)。要求:(1)说明程序的设计思路(可以使用伪代码、流程图或者文字说明的形式)(4分)1200并累加,最后输出计算结果。注:意思表达基本正确即可得满分(2)编写相应的实现的代码,必要的地方写明注释(8分)#include<stdio.h>intmain()… (1分){intsum=0;… 1分)for(inti=1;i<=200;i++)… 2分){if(i%5==0&&i%15!=0)… 2分){printf("%d\n",i);sum=sum+i;……………………..(1分)}}printf("%d",sum);……………..………(1分)return0;}注:其它实现正确给满分,部分正确也可酌情给分2.从键盘中输入一个整数,输出其对应星期,如果输入的数字不在1-71Monday2Tuesday,以此类推…完成周一到周天的转换(周一到周日的英文分别是:Sunday(星期日)Monday(星期一)、(星期二)Wednesday(星期三)Thursday(星期四)、Friday(星期五)、Saturday(星期六)(13分)。要求:(1)说明程序的设计思路(可以使用伪代码、流程图或者文字说明的形式)(5分)利用scanf函数从键盘中接受一个数,利用switch来完成分支选择,如果输入的是1,执行case1,利用printf函数打印Monday,以此类推,如果输入的数字不在1-7的范围,使用default,利用 scanf("%d",&n);printf打印“输入有误!”。注:意思表达基本正确即可得满分,也可以使用if来实现。(2)设计相应的实现代码,必要的地方写明注释(8)#include<stdio.h>voidf(inta) (1分){switch(a)… (2分){case1:printf("Monday\n");break;case2:printf("Tuesday\n");break;

f(n); (1分)}注:case任意写对3个即可得3分,其它实现正确给满分,部分正确也可酌情给分密密封线case

温馨提示

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

评论

0/150

提交评论