C语言程序设计(本科C卷及答案)(1)(1).doc_第1页
C语言程序设计(本科C卷及答案)(1)(1).doc_第2页
C语言程序设计(本科C卷及答案)(1)(1).doc_第3页
C语言程序设计(本科C卷及答案)(1)(1).doc_第4页
全文预览已结束

下载本文档

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

文档简介

题号一二三四五六总分得分考试形式:闭卷 开卷 笔试 机试 答卷要求:试卷答案需填写至答题卡内一、单项选择题(每小题 2 分,共 30 分)12345678910CDABBADACC1112131415CDACB1、C语言源程序文件是一个后缀为( )的文件。(第1章)A) .bas B) .java C) .c D) .pas2、下列哪个图形不属于传统流程图的符号( )(第2章)A) B) C) D) 3、下列标识符中,不合法的用户标识符为( )。(第3章)A) a+4B) IfC) thenD) _1234、下面运算符优先级最高的是()。(第3章)A) *B) !C) -(减号)D) =5、以下哪个是不正确的转义字符( )。(第3章)A) B) 077C) 0D) n6、若int n,x=1,y=0,则条件表达式n=xy?x:y的结果为( )。(第4章)A) 0B) 1C) 2D) 表达式错误7、分析以下程序, 下列说法正确的是( )。(第4章)int main() int i=10,m=0,n=0,k=0;switch(i/10) case 0: m+;n+;break;case 10: n+; break;default: k+;n+; printf(%d %d %dn,m,n,k); A) 0 0 0B) 0 1 0C) 1 1 0D) 0 1 18、程序段如下:则以下说法中正确的是( )。(第5章)int k=-10;while(k0) k=k+1;A) while循环执行10次B) while循环执行11次C) 循环体语句一次也不执行D) 循环是无限循环9、下列程序段执行后k值为( )。(第5章)int k=0,i;for(i=0;i0 & b0) c+; else c-;后,变量c值为_。(第4章)4、执行语句“for(s=0,i=1;i11;i+) if(i=5) continue; s+=i; 后,s值为_。(第5章)5、在执行int a3=1,2,3,4,5,6;语句后,a10的值是_。(第6章)三、程序改错题。指出下列程序错误代码并改正,使其能正确运行。(每题只有2处错,指出1处得1分,改正得2分,每处 3分,共 12 分)题号错误代码改正后1(1)scanf(%d,%d,a,b);scanf(%d,%d,&a,&b);(2)printf(%dn,a+b);printf(%dn,a+b);2(1)for (i=1;i=300;i+);for (i=1;i=300;i+)(2)if (n%3)if (n%3=0)1、(第3章)下面程序是输出a、b两个数,输出a+b的和。#include int main()int a,b;scanf(%d,%d,a,b);printf(%dn,a+b);2、(第4章和第5章)下面程序是求1.300之间能被3整除的数。int main()int i;for (i=1;i=300;i+);if (n%3)printf(%d ,i);return 0;四、程序分析题,根据下列程序,写出其运行结果。(每小题 4 分,共 12 分)1、(第3章)int main() int x=4,y=0,z; x*=3+2; printf(%d ,x); x*=y=z=4; printf(%d,x);输出结果:_20 802、(第4章和第5章)#include int main() int i; for(i=1;i=5;i+) if(i%2) putchar(); putchar(#);输出结果:_#3、(第6章)void main() int a44,i,j,k;for (i=0;i4;i+)for (j=0;j4;j+)aij=i-j; for (i=0;i4;i+)for (j=0;jamaxIndex第4空maxIndex1、一球从 100米高度自由落下,每次落地后反跳回原来高度的一半,再落下,求它在第十次落地时,共经过多少米?第十次反弹多高?(第4和5章)int main() float Sn=100.0,hn=Sn/2; int n; for (n=2;n=10;n+) Sn= 【第1空】; hn= 【第2空】; printf(第10次落地时共经过%f米n,Sn); printf(第10次反弹%f米n,hn);2、下面的函数是实现找出一维数组中最大元素的下标。(第6和7章)int findMaxIndex(int a,int n)int i;int maxIndex;maxIndex=0;for(i=0;in;i+)if(【第3空】)maxIndex=i;return 【第4空】;六、编程题(第1题 12 分,第2题12分,共 24 分)1、有三个数a、b、c,由键盘输入,输出其中最大的数。(1)画出该程序的流程图;(6分)(2)编写程序。(6分)参考答案(1)(2)#include int main()int a,b,c;int max;scanf(%d%d%d,&a,&b,&c);if (ab)max=a;elsemax=b;if (cmax)max=c;printf(max=%dn,max);return 0;2、编写程序,对n个整数逆序存放。n个整数和n在主程序中输入,最后在主函数中输出。(要求使用指针变量指向数组的方法)例如:8 6 9 1 3,逆序后结果是:3 1 9 6 8参考答案#include #define N 20void revert(int a,int n)int *p,i;int t;p=a;for (i=0;in/2;i+)t=*(p+i);*(p+i)=*(p+n-i-1);*(p+n-i-1)=t;int main()int i,n;int aN;scanf(%d,&n);for (i=0;i

温馨提示

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

评论

0/150

提交评论