资源描述:
《c语言程序设计试题(B)答案.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、淄博职业学院2012-2013第二学期《C程序设计》B卷参考答案及评分标准命题教师:贲艳波一、单项选择题(本大题共20小题,每小题1.5分,共30分)该项的各题的四个选项中,只有一个选项是正确的。错选、多选或未选均不得分。题号12345678910答案DDCDCCCDBD题号11121314151617181920答案DCACCACBCA二、填空题(本大题共5空,每空2分,共10分)请在每小题的空格中填上正确答案,错填、不填均不得分。21、*/22、323、524、2625、a*h/2.0。三、程序填空(本大题
2、共10空,每空2分,共20分)本题共有5个程序片段,每个空格错填、不填均不得分。若部分题目出现多个答案,根据正确与否得分,但不存在步骤分。26、72427、“%d,%d”,&m,&nm=m+n28、max=amax=b29、i=0sum+=a[i]30、n/100n%10四、程序阅读分析(本大题共2个小题,每题5分,共10分) 31、完成的主要功能:求m和n的最大公约数并输出(3分,意思相同也可给分)输出结果为3(2分)。32、两个程序片段都进行了函数调用,程序片段1调用后没有改变主函数main中变量y的值,而
3、程序片段2改变了变量y的值。(3分,意思相同也可给分)程序片段1输出2(1分),程序片段输出7(1分)。五、程序编制(本大题共3个小题,每题10分,共30分) 评分说明:a.程序符合要求,格式正确,运行结果正确,可改满分b.错漏一处标点,符号,变量或输入输出语句扣1分,扣完为止c.程序关键部分的语句出错扣1~4分,扣完为止(同一问题引起的错误不重复扣分)33、程序的流程图(共5分,步骤分和程序里面各个小项的步骤分一样)。Y结束1=>i1=>si<=20i+s=>si+1=>i开始输出sN程序(共5分,根据学生所
4、答题的步骤给分,分值如下)。程序:main(){longi,s;/*1分*/s=1;i=1;/*1分*/do{s*=i;}while(i<=20)/*2分*/printf(“%d”,s)/*1分*/}34、请编程:从键盘接受10个整数数据存入数组中,计算这10个数据中的最大值并输出。(10分)main{intdata{10};第2页,共2页印刷时间:二〇二一年十月四日星期一inti,max;/*1分*/for(i=0;i<10;i++)scanf(“%d”,&data[i]);/*2分*/max=data[0]
5、;/*1分*/for(i=0;i<10;i++)/*3分*/if(data[i]>max)max=data[i];/*2分*/printf(“max=%d”,max);/*1分*/}35、写两个子函数,分别求出两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,要求:两个整数在主调函数中由键盘输入。(10分)#includeintgys(intx,inty){intm,n,t;if(x>y){m=x;n=y;}else{m=y;n=x;}/*1分*/if(n==0)return
6、-1;while(m%n!=0){t=n;n=m%n;m=t;}/*2分*/returnn;/*1分*/}intgbs(intx,inty){returnx*y/gys(x,y);}/*2分*/main(){intx,y;printf(“PleaseEnterx,y(>0):”);scanf(“%d,%d”,&x,&y);/*2分*/printf(“%d%dgbsis:%d”,x,y,gbs(x,y));/*1分*/printf(“%d%dgysis:%d”,x,y,gys(x,y));/*1分*/}第2页,共
7、2页印刷时间:二〇二一年十月四日星期一