c语言程序设计试卷及答案(A)_第1页
c语言程序设计试卷及答案(A)_第2页
c语言程序设计试卷及答案(A)_第3页
c语言程序设计试卷及答案(A)_第4页
c语言程序设计试卷及答案(A)_第5页
已阅读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. 2_int_4.下列字符常量不合法的是( )。A. 2B. tC. ab D. n 5.执行以下语句后的输出结果为( )。int x; float y; 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.600000C. x=13,y=3 D. x=13,y=3.66.以下哪种变量类型在C语言中不存在 ( )。A. 整型变量B.实型变量C. 字符串变量D.字符变量7.设m=10,n=4,则赋值运算m%=n+1执行后m的值是( )。A. 1B. 2C. 3 D. 08.下面语句执行后输出结果为( )。int x=10,y=3,z; printf(“%dn”,z=(x%y,x/y);A. 0B.1C. 3 D. 49. 下面语句执行后输出结果为( )。int x=10,y=10,z=10; printf(“%d,%d,%d ”,x+,-y,+z);A. 10,10,10B. 10,9,11C. 9,10,11D. 11,10,910.以下选项中不是C语句的是( )。A.int i; i+; printf(%dn, i); B.;C.a=5,c=10D. ; 11.以下程序的输出结果是( )。 main( ) int x=2,y=-1,z=2; if( xy) if(y0) z=0; else z=z+1; printf(“%d”,z); A. 0B. 1 C. 2D. 312.不能表达:x为奇数时表达式为“真”,偶数时表达式为“假”的表达式是( )。A. x%2= =1B. !(x%2= =0) C. !(x%2)D. x%213.以下程序段中while语句的循环次数是( )。 int i=0;while(i=1) i+;A.无限次 B. 有语法错误,不能执行 C. 一次也不执行 D. 执行一次14.假设a,b均为字符数组以下正确的输入语句是( )。A.gets(a,b);B. scanf(“%s%s”,a,b); C. scanf(“%s%s”,&a,&b);D.gets(“a”); gets(“b”);15.若有定义:int a,*p; 则以下正确的赋值表达式是( )。A.p=&aB.p=a C.*p=&aD.*p=*a16.以下函数调用语句中,func(a+b,c-d+100);含有的实参个数是( )。A.1B.2 C.4D.517.有以下定义:struct personchar name9; int age;struct person class10=“Johu”,17,“Paul”,19,“Mary”,18,“Adam”,16,;则下面能输出字母M的语句是( )。A.printf(“%cn”,);B.printf(“%cn”,1);C.printf(“%cn”,1);D.printf(“%cn”,0);18.下列关于break和continue语句的叙述正确的是( )。A.都可以出现在程序的任何位置 B.break语句可以出现在循环体或switch语句中C. continue语句可以出现在循环体或switch语句中 D.两者必须配对使用19.用作累加器和累乘器的变量应该赋初始值为( )和( )。A.0 0 B.0 1 C.1 0 D.1 120.下列语句( )可以实现变量a与b的数值交换。A.a=b;b=a; B.t=a;b=a;a=t; Ct=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( ) int n; float s=1.0; for(n=10; _; _ )s=s+_; printf(“%f”,s);5. 以下程序的功能是用选择法对数组a中的整数由小到大进行排序。void sort(int b,int n) int i,j,t; for(i = 0;in 1;i + ) for(_;jn;j + ) if(bi_b j) t = bi;_;b j=t; main() int a=5,8,6,2,7,4,1,3; int i; sort(a,8); for(i = 0;i8;i + ) printf(“5d”,ai); printf(“ n”);6. printf(%5.3fn,123456.12345);输出为_。7. 存储字符串“program”的字符数组至少需要_个元素。8指针变量可以加减一个整数,例如:_;指针变量可以有空值,例如_。 9以下程序从键盘输入10个学生的有关数据,然后把它们转存到磁盘文件上去。#include #define SIZE 10 struct Student_type - char name10; 程 int num; 序 int age; 段 char addr15; 1 studSIZE; -void save( ) - FILE *fp; int i; if(fp=fopen(stu.dat,wb)=NULL) 程 printf(cannot open filen); 序 return; 段 2 for(i=0;iSIZE;i+) if(fwrite(&studi,sizeof(struct Student_type),1,fp)!=1) printf(file write errorn); fclose(fp); -int main() - int i; printf(“enter data of students:n); 程 for(i=0;iSIZE;i+) 序 scanf(%s%d%d%s,,&studi.num,&studi.age,studi.addr); 段 save( ); 3 return 0; 0)|(+j0) a+; printf(“i=%d,j=%d,a=%d”,i,j,a); 3. 以下程序的输出结果是_。 main( ) int n=10;while(n7) printf(“%d,”n); n- ;4. 以下程序的输出结果是_。fun1(int a,int b)int c;a+=a; b+=b;c=fun2(a,b);return c;fun2(int a,int b)int c;c=a*b%3;return c;main( )int x=2,y=4;printf(%dn,fun1(x,y);5. 若有以下程序段,执行后的输出结果是_。int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%dn”,a,b,c);6. 若有以下程序段,执行后的输出结果是_。 main() int i;for(i=3;i1,n-,1.0/n 或者n=2,-n,1.0/(12-n)等类似形式。5. j=i+1,bi=bj 6. 123456.1237. 88.P+ P=NULL9.定义一个结构体类型的数组变量,用来存放学生信息; 自定义函数save用来在磁盘上建立文件并把学生信息通过frwrite函数写到磁盘文件; 主函数完成从键盘输入学生信息,然后调用save函数。三、程序阅读(每小题5分,共30分)1.321 2.i=1,j=0 ,a=73. 10,9,8,

温馨提示

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

评论

0/150

提交评论