C语言复习试题.doc_第1页
C语言复习试题.doc_第2页
C语言复习试题.doc_第3页
C语言复习试题.doc_第4页
全文预览已结束

下载本文档

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

文档简介

一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.主函数头中的“main”是( )A.保留字B.函数名C.变量名D.类型名2.下列运算符中优先级最高的是( )A.?:B.&C.D.!3.设 int a;,执行表达式(a= =1)&(a=-1)&(a=2)后,a的值是( )A.-1B.0C.1D.24.设int a,b;,与a+=b+;等价的是( )A.a=b+;B.a=+b;C.a=a+b+;D.a=a+b;5.关于宏定义命令,叙述正确的是( )A.在程序编译前进行宏替换B.在程序编译时进行宏替换C.在程序编译后进行宏替换D.在程序运行时进行宏替换6.下列表达式值为0的是( )A.52B.2&5C.!25D.2&57.对循环结构正确的叙述是( )A.do-while循环体可能被执行0次B.do-while循环体至少被执行1次C.while循环体不可能被执行0次D.for循环体不可能被执行无限次8.设int n,p=0;,与语句if(n!=0)p=1;等价的是( )A.if(n)p=1;B.if(n=1)p=l;C.if(n!=1)p=1;D.if(!n)p=l;9. 下列不属于保留字的是( )A. defaultB. registerC. structD. unsign10. 下列不能作为常量的是( )A. 0582B. 0xa5C. nD. 2.5e-211. 设char c=A;int i=l, j;,执行j=!c&i+;后,i和j的值分别是( )A. 1和0B. 1和1C. 2和0D. 2和l12. 设int a;,执行表达式(a=1,2,3),a+1后,a和表达式的值分别是( )A. 1和2B. 2和3C. 3和4D. 4和513. 下列用户自定义标识符正确的是( )A. 4aB. b_1C. -&D. *p14. 下列程序段中循环体执行的次数是( )int x=-1;dox=x*x;while(! x);A. 0B. 1C. 2D. 无限 15. 设chark=a;float j=2.0;,执行k+=5/j;printf(“c”, k);后,输出结果是( )A. aB. bC. cD. d二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。16.执行printf(“dn”,1+!2+(3y?+x:y+;后,z的值是_。31. 设int m=3;float n=12.6;char ch=a;,若用输入语句实现上述三个变量的初始化结果且键入数据形式为:3,12.6a,则scanf语句应是_。三、程序分析题(本大题共4小题,每小题4分,共16分)阅读下列程序,将输出结果写到各题右侧的空白处。26.void main() int color=2;switch(color)case l:printf(“redn”);break;case 2:printf(“yellown”);case 3:printf(“bluen”);27.gcd(int p,int q)if(p= =q)return p;else if(pq)return gcd(p-q,q);else return gcd(p,q-p);void main( )int m=24,n=36,min,max;max=gcd(m,n);min=m*nmax;printf(“max=d,min=dn”,max,min);28.void main() int m,n;for(m=1;m=3;m+)for(n=1;n=2*m-l;n+)printf “*”);printf(“n”);29.void main()float x=3.6;int i;i=x;printf(x=%5.3f, i=%dn”,x,i);四、程序填充题(本大题共3小题,每小题6分,共18分)请将下列程序横线处缺少的部分补上,使其能正确运行。30.对两个整型变量先进行输入和输出,将它们的值交换后再输出。#define PR printf(“a=d,b=dn”,a,b)void main( )int a,b,_;* 第一空 *scanf(“dd”,_);* 第二空 *PR;temp=a,_,b=temp;/* 第三空 *PR;31.为n输入一个正整数值后,计算并输出sum=1-的值。void main()int n,k=0;float_;* 第一空 *scanf(d,&n);dok+;if(_)sum+=1.0k;* 第二空 *else sum-=1.0k;while(_);* 第三空 *printf(sum=.4fn,sum);五、程序设计题(本大题共2小题,每小题8分,共16分)33.(1)根据下列计算公式写出函数,将华氏温度(F)转化为摄氏温度(C)。公式:C=(F-32)函数头为:float change(float F)(2)写出主函数,输入华氏温度,调用函数change,计算并输出对应的摄氏温度。输出形式(温度要求两位小数)

温馨提示

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

评论

0/150

提交评论