c语言程序设计试卷及答案(A)_第1页
c语言程序设计试卷及答案(A)_第2页
c语言程序设计试卷及答案(A)_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

《C语言程序设计》2013至2014学年度第1学期期末(A)卷专业班级姓名学号题号得分一二三四五六七 八 计评卷人(120后将试卷连同答题纸一齐交)一、单项选择题(每小题2分,共40分)1。在一个C语言程序中,有并且只能有一个( )函数。A。main函数 B。自定义函数 C。外部函数 D.内部函2。一个C语言程序,总是从( )函数开始执行。A。main函数 B。自定义函数 C.外部函数 D。内部函3.下列标识符中,不能用作变量名的是( 。A._1234_ B。_1_2 C.int_2_ D。4.下列字符常量不合法的是( ).A。‘2’ B.‘\t’ C.‘ab’ D.‘5。执行以下语句后的输出结果为( ).intx;floaty;y=3.6;x=(int)y+10;printf(“x=%d,y=%f”,x,y);A.x=13.6,y=3.600000B.x=13,y=3。6000006以下哪种变量类型在C语言中不存在( ).

C。x=13,y=3 D.x=13y=。A。整型变量

B。实型变量

C。字符串变量

D.字符变量设m=10,n=4,则赋值运算m%=n+1执行后m的值是( 。A1

B2

C3

D.08。下面语句执行后输出结果为( 。intx=10,y=3,z; printf(“%d\n",z=(x%y,x/y));}A.0 B.1 C。3 D.49.下面语句执行后输出结果为( 。intx=10,y=10,z=1;printf(%d,%d%dx+,——y,++z}A。10,10,10 B.10,9,11 C。9,10,11 D。第1 页,共7页10。以下选项中不是C语句的是(。A.{inti;i++;printf("%d\n”,i;}B. ;C.a=5,c=10D.{;}。以下程序的输出结果是( )。main(){intx=2,y=-1,z=2;if(x<y)if(y〈0)z=0;elsez=z+1;print(%d”,z; }A。0 B.1 C。2 D。3不能表达:x为奇数时表达式为“",偶数时表达式为“假”的表达式是( ).A.x%2==1 B。!(x%2==0) C。!(x%2)以下程序段中while语句的循环次数是( 。inti=0;while(i=1) {i++;}

D.x%2A。无限次B.有语法错误,不能执行 C。一次也不执行 D。执行一次14。假设a,b均为字符数组以下正确的输入语句是( 。A.get,b; scan(%s%s,abC.scan(“%%s",&&b);gets(“a”);gets(“b”);若有定义:inta,*p;则以下正确的赋值表达式是( 。A。 p=&a B。p=a C.*p=&a D. *p=*a以下函数调用语句中,func(a+b,c-d+100);含有的实参个数是( 。1

2 C。 4

D. 5有以下定义:structperson{charname[9];intage;}structpersonclass[10]={“Johu",17,“Paul”,19,“Mary”,18,“Adam”,16,}则下面能输出字母M的语句是( ).A.printf(“%c\n",class[3].name);C.printf(“%c\n”,class[2].name[1]);[0);

B. printf(“%c\n",clas[3]D。printf(“%c\n”class[2]18。下列关于break和continue语句的叙述正确的是( 。A.都可以出现在程序的任何位置B.break语句可以出现在循环体或switch语句中C.continue语句可以出现在循环体或switch语句中 D。两者必须配对使用第2 页,共7页19。用作累加器和累乘器的变量应该赋初始值为()和( 。A.0 0 B.0 1 C。1 0 D。1 20.下列语句( )可以实现变量a与b的数值交换。A.{a=b;b=a;} B.{t=a;b=a;a=t;} C{t=a;a=b;b=t。 D。以都正确二、填空(每空1分,共20分)1.C语言源程序文件的后缀是 ,经过编译后,生成文件的后缀是 ,经连接后,生成文件的后缀是 。2。表达式3.5+1/2+56%10的结果为 。3.C语言中的三种逻辑运算符分别是 、 、 。4.填空完成以下计算s=1+1/2+1/3+……+1/10的程序main(){intn;floats=1。0;for(n=10; ; )s=s+ ; 5.a中的整数由小到大进行排序voidsort(intb[,int){inti,j,t;for(i=0;i<n–1;i++)for( ;j<n;j++if(b[i] b[j]){t=b[i]; ;b[j]=}main(){inta[]={5,8,6,2,7,4,1,3};inti;sort(a,8);for(i=0;i<8;i++)printf(“﹪5d",a[i]);printf(“\n");}6.printf(”%5.3f\n”,123456.12345);输出为 。7。存储字符串“program”的字符数组至少需要 个元素。指针变量可以加减一个整数,例如: ;指针变量可以有空值,例第3 页,共7页如 .10个学生的有关数据,然后把它们转存到磁盘文件上去。#include<stdio。h>#defineSIZE10structStudent_type <—--———————-—-——-———{charname[10; 程intnum; 序intage; 段charadd[15; 1}stud[SIZE]; <—-——-——--——-----—void) 〈--—-—-—-------—---—{FILE*fp; inti;if((fp=fopen(”stu。dat","wb”))==NULL) 程{printf("cannotopenfile\n"); 序return; 段} 2for(i=0;i<SIZE;i++)if(fwrite(&stud[i],sizeof(structStudent_type),1,fp)!=1)printf(”filewriteerror\n”);fclose(fp);} <-—-—--——--—-——-—---intmain() <————-———————---—-——{inti;printf(“enterataofstudents:n”; 程for序

( i=0 ; i 〈 SIZE ; i++ )%d%d%s"stu[i].namestu[inum&stu[i].agestud[i.addr;段save(3第4 页,共7页return0;} <----————-— —— 请回答问题:程序段1完成的功能是 程序段2完成的功能是 ;程序段3完成的功能是 三、程序阅读(530分1。执行以下程序:main(){inti,j,k,t;scan(%d",&;i=t%10;t=t/10;j=t%10;k=t/10;printf(“%d”,i*100+j*10+k);}当输入123时,输出结果为 2。以下程序的输出结果是 。main(){inti=0,j=0,a=6;if(++i>0)||(++j>0) 3。以下程序的输出结果是 .main(){intn=10;while(n>7){printf(“%d,"n);n--;}4.以下程序的输出结果是 fun1(inta,intb){ intc;a+=a;c=fun2(a,b);returnc;}fun2(inta,intb)第5

printf(“i=%d,j=%d,a=%d”,i,j,a);}页,共7页{intc;returnc;}main({intx2y=4;prinf%d\n”,fun(x,y);}5。若有以下程序段,执行后的输出结果是 inta=0,b0c=0;c=(a-=5),(a=b,b;prinf%d,%d,%d\n,a,b;6.若有以下程序段,执行后的输出结果是 {inti;for(i3i<1;i++){i(i%4==)contineeleprintf(%,i} }四、编程题(每小题5分,共10分)110011 1e五、附加题(不计入总分)n!C

n!C3。编写一个找出所有“水仙花"数的C语言程序。参考答案及评分标准一、单项选择题(每小题2分,共40分)1~5AADCB 6~10CDCBC 11~15CCABA 16~20BDBBC二、填空(每空1分,共20分)1..c。obj 2。9.5第6页,共7页3.&& || !4。n〉1,n——,1.0/nn>=2,—-n,1。0/(12—n)5j=i+1,>,b[i]=b[j]6.123456.1237。88。P++ P=NULL9。定义一个结构体类型的数组变量,用来存放学生信息;自定义函数save用来在磁盘上建立文件并把学生信息通过frwrite函数写到磁盘文件;save三、程序阅读(530分)1。

温馨提示

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

评论

0/150

提交评论