已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 1 页 共 21 页 C 语言复习题(语言复习题(2013 新版)新版) 一、选择题一、选择题 请把答案填写在下面的横线上,否则不能得分。 1.B2.D3.C4.D5.A6.B7.A8.D9.C10. D 11. C12. B13. D14. B15. D16. C17. D18. D19. A20. C 21. A22. D23. B24. C25. C26. B27. B28. A29. D30. A 31. C32. A33. B34. A35. C36. D37. B38. D39. A40. C 41. B42. D43. C44. C45. D46. D47. D48. C49. D50. C 51. A52. B53. B54. A55. C56. A57. B58. A59. B60. C 61. D62. C63. C64. B65. B66. C 1. 下列关于 C 程序的说法错误的是() 。 A)一个程序必须有一个 main 函数B)函数首部后面必须有分号 C)可以使用“/*/”来注释一段代码D)每个语句的末尾必须有分号 2. 下列关于 C 程序的说法错误的是() 。 A)stdio.h 是输入输出头文件B)一个 C 语句必须以分号结束 C)VC6.0 中可以使用“/”来注释一行D)#define 命令不是预处理命令 3. 下列选项中,不能作为 C 语言标识符的是() 。 A)_totalB)p405C)$123D)abc 4. 若有“float x=123.41; printf(“%4.2f“,x);” ,则执行后的输出结果为() 。 A)12.3B)12.34C)123.4D)123.41 5. 下列选项中,不能正确表示分式 3 4 的 C 语言表达式是()。 A)4/3B)4/3.0C)1.0*4/3D)4/(float)3 6. 若有定义“int x,y;” ,则表达式“x=1,y=x+3/2”的值为() 。 A)1B)2C)2.0D)2.5 7. 下列关于 C 程序的说法错误的是() 。 A)C 语言程序的基本组成单位是语句B)C 语言程序中一行可以写多条语句 C)每条语句必须以分号结束D)一个语句可以写在多行上 8. 以下关于标识符的说法错误的是() 。 A)标识符由字母、数字和下划线组成B)标识符不能与系统的关键字同名 C)首字符必须是字母或下划线D)不区分大小写,s 和 S 是同一个变量 9. 表达式 7%4+7/2 的值是() 。 A)4B)4.5C)6D)6.5 10. 已知变量 a 和 b 是 int 型,若有语句“scanf(“a=%d,b=%d“,” ,使 a 的值是 5,b 的值是 8,则正确的输入是() 。 A)5 8B)5,8C)a=5 b=8D)a=5,b=8 11. 若有定义“int a; float b;” ,执行“scanf(“%3d%f“,”语句时,从键盘输入: 1234567.8,则 a 和 b 的值分别是() 。 A)1234 和 567.800000B)123 和 567.800000 C)123 和 4.000000D)234 和 567.800000 12. 执行“printf (“%f%“,1.0/3);” 语句后,正确的输出结果是() 。 B D C D A B A D C D C B 第 2 页 共 21 页 A)0.3B)0.333333%C)0.3%D)0.003% 13. 若要定义符号常量 PI 代表 3.14,正确的预处理命令是() 。 A)#define PI 3.14;B)#define PI=3.14 C)define PI 3.14D)#define PI 3.14 14. 以下变量定义及初始化语句中正确的是() 。 A)double a=0.5;b=1.5;B)char a=97,b=b; C)int a=b=0;D)float a=1,b= 15. 以下关于算法的描述中不正确的是() 。 A)算法中每一个步骤的含义都应该是确定的 B)算法中每一个步骤都应该能有效执行 C)正确的算法应在有限步骤内结束 D)正确的算法都必须有输入和输出 16. 当一个关系表达式成立时,该表达式的值为() 。 A)-1B)0C)1D)不确定的非 0 值 17. 关于 if 语句的说法正确的是() 。 A)双分支语句中有可能两个分支都不执行 B)if 多分支语句中不能没有最后的 else C)if 语句中可以使用 continue 语句 D)else 总是与前面最近的、没有与其它 else 配对的 if 配对 18. 要判断 x 是否满足表达式“-1x1” ,正确的 C 语言表达式是() 。 A)-1=-1|x=-1 A)5B)4C)6D)0 30. 若 i, j 已定义为 int 类型, 则以下循环嵌套程序段中循环体一共要执行的次数是 () 。 for (i=5;i0;i-) for (j=0;j=0” , 则执行语句“p=p+4;” 后, p 指向的数组元素是() 。 A)a4B)a5C)a6D)a7 51. 执行以下程序段的输出结果是() 。 char s =“Program“,*ptr; for (ptr=s; *ptr!=g; ptr+) printf(“%c“,*ptr); A)ProB)ProgC)ProramD)程序有错误 52. 对以下说明语句的正确理解是() 。 int a10=6,7,8,9,10; A)将 5 个初值依次赋给 a1至 a5 B)将 5 个初值依次赋给 a0至 a4 C)将 5 个初值依次赋给 a6至 a10 D)因为数组长度与初值的个数不相同,所以此语句不正确 53. 以下给字符数组 str 定义和赋值正确的是() 。 A)char str10; str=“China! “;B)char str =“China!“; C)char str10; strcpy(str, “abcdefghijkl“);D)char str10=“abcdefghijkl“; 54. 当接受用户输入的含有空格的字符串时,应使用()函数。 A)getsB)getcharC)scanfD)printf 55. 执行以下程序段的输出结果是() 。 int a =1,8,2,8,3,8,4,8,5,8; printf(“%d,%dn“,a4+3,a4+3); A)6,6B)8,8C)6,8D)8,6 56. 以下说法正确的是() 。 A)pi等价于*(p+i)B) char *p; for (p=s;pscore=98;D)strcpy(*p).name,“LiMing“); 60. 已知如下定义,则下面叙述不正确的是() 。 struct stu int a; float b;stutype; A)struct 是结构体类型的关键字 B)struct stu 是用户定义的结构体类型 C)stutype 是用户定义的结构体类型名 D)a 和 b 都是结构体成员名 61. 当定义一个结构体变量时,系统为它分配的内存空间是() 。 A)结构体中一个成员所需的内存容量 B)结构体中第一个成员所需的内存容量 C)结构体中占内存容量最大者所需的容量 D)结构中各成员所需内存容量之和 62. 定义结构体类型“struct s int x; float f; a3;” ,则执行语句“printf(“%d“,sizeof(a);”的 输出结果是() 。 A)4B)12C)24D)8 63. 执行下列程序段的输出结果是() 。 struct cint x; int y;s2=1,3,2,7; printf(“%d“, s0.x*s1.x); A)14B)6C)2D)21 64. 若执行 fopen 函数时发生错误,则函数的返回值是() 。 A)地址值B)NULLC)1D)EOF 65. 若要用 fopen 函数打开一个新的二进制文件,该文件要既能读又能写,则文件打开方式 应是() 。 A)“ab+“B)“wb+“C)“rb+“D)“ab“ 66. 当顺利执行了文件关闭操作时,fclose 函数的返回值是() 。 A)-1B)TRUEC)0D)1 二、填空题二、填空题 请把答案填在下面的横线上,否则不能得分。 1. C 语言程序的基本单位是_。 2. 要求运算对象必须是整型的运算符是_。 3. 为了计算表达式 2013 yx ,需要用到的数学函数是_。 (写出函数名) 4. 若要计算实数 x 的绝对值,则要用到的数学函数是_。 (写出函数名) 5. 结构化程序的三种基本控制结构是_、选择结构和循环结构。 6. C 语言程序设计中,单行注释以_符号作开始标记。 7. C 语言程序设计中,多行注释以_符号作开始标记,以_符号作为 结束标记。 8. C 语言的标识符只能由字母、_和_组成,且第一个字符必须为字 母或_。 9. C 语言中一个实数常量默认为_类型。 D D C C B B C 函数 % PO W f a b s 顺序 数字 下划线 下划线 / * d o u b l e 第 7 页 共 21 页 10. C 语言中求字节的运算符是_。 11. 若有 C 语言语句“scanf(“%d,%d“,” ,如果要给变量 a 输入 5,变量 b 输入 6,则 在程序执行时,应该输入_,然后回车。 12. C 语言中表示换行的转义字符是_。 13. C 语言程序书写格式自由,一行可以写几个语句,一个语句也可以写在多行上。每条语 句的最后必须有一个_符号表示语句的结束。 14. 若有定义“int a=2,b=3,x; x=ab?a:b;” ,则 x 的值为_。 15. switch 语句中,为了在其它条件都不满足时执行某个操作,应该使用_子句。 16. 如果循环体不需要执行任何操作,此时应使用_语句作为循环体。 17. 若要提前终止循环语句的执行,应该使用_语句。 18. 若有定义“int a,*p=” ,要通过指针变量 p 来输入 a 的值,请填空。 scanf(“%d“,_); 19. 若有定义“int x,*p;” ,为了让 p 指向 x,应该执行的操作是_。 20. 判断闰年的逻辑表达式为 y%4=0 3 default 空 P | | 2 1 FO R P= NU LL 0 10 RET U RN 地址 不同 嵌套 m a i n m a t c h , h 第 8 页 共 21 页 37. 从作用域的角度,变量可分为局部变量和_。 38. 若有定义“int i,*p;” ,为了使 p 指向 i,则能实现该功能的语句是_。 39. 在 C 程序中,指针变量 p1 指向整型变量 a,如需要让指针变量 p2 也指向整型变量 a, 则对应的语句为_或者_。 40. 若有定义“static int a10=1,2,3;” ,则 a3的值为_。 41. 一维数组中,下标的取值是从_开始的。 42. 若有定义“int a34;” ,则该数组的最后一个元素是_。 43. 若有定义“char *p=“ABCD“;” ,执行“puts(p+2);”的输出结果为_。 44. 若有定义“int a10,*p1=” ,则 p1-p2=_。 45. 若有定义“int a10;” ,则*(a+5)表示_。 46. 设 int a23=2,3;则数组元素_的值为 3。 47. 若有定义:double xx35;,则 xx 数组中行下标的最大取值为_。 48. 若有定义:char s120,s2 =“China“;,则执行语句:strcpy(s1,s2+2);后,字符数组 s1 中 存放的字符串为_。 49. 字符串用一维字符数组形式进行存储,它以_结尾。 50. 有 语 句 “ char c =“I am a student“; ” ; 该 字 符 串 的 长 度 是 _ , c3=_。 51. 若有定义“char str10;” ,用 str 存储一个字符串时,则该字符串的最大长度为 _。 52. 若有定义:int a10, *p= ,则 p4表示的数组元素是 a_。 53. 连接两个字符串的库函数为_。 54. 在 C 语言中,二维数组在内存中的存放顺序是_。 55. 若二维数组 a 有 m 列,则在 aij前的元素个数为_。 56. 若有枚举类型定义“enum weekdaySun=7, Mon, Tue, Wed=0, Thu, Fri, Sat;” ,则枚举常 量 Mon 的值为_。 57. 若有结构体类型的定义“struct test char x; int y; float z;” ,则该结构体类型的变量所占 字节数为_。 58. 若有结构体类型的定义“struct test int x; int y;tt,*p=” ,通过指针 p 引用结构体变量 tt 的成员 x 的方法有_和_。 59. 定义共用体类型的关键字是_。 60. 共用体变量某一时刻只能存放其中_个成员的值。 61. 共用体变量的地址与它的所有成员的地址_。 62. 访问文件时,文件指针变量的类型需定义为_。 63. 以写方式打开文件 letter.txt 的语句是_(“letter.txt“,“w“)。 64. 关闭文件指针 fp 指向的文件的语句是_。 全局变量 0 CD 3 I NA 9 7 ST RA CT 8 9 1 第 9 页 共 21 页 三、程序填空题三、程序填空题 注:以下参考答案仅用于参考,若干答案也可以写成其它等价的形式。注:以下参考答案仅用于参考,若干答案也可以写成其它等价的形式。 1. 下列程序段要从键盘输入两个变量 x、y 的值,并交换 x 和 y。请填空。 int x,y,temp; scanf(“%d%d“, _);/ _;/ x=y y=temp; printf(“x=%d,y=%dn“, x,y); 2. 下面的程序段用于读入一个华氏温度,计算并输出对应的摄氏温度,华氏温度转换为摄 氏温度的公式为:32 9 5 FC。请填空。 double C,F; printf(“Input F:n“); scanf(“_“,/ %lf _;/ C=5.0/9*(F-32) printf(“C=%.2fn“,C); 3. 下面的程序段用于计算周期为 T 秒的人造卫星离地面的平均高度,其中:地球质量 M=6 1024kg,地球半径 R=6.371106m。人造卫星离地面的平均高度 H 的计算公式为: R MT H 3 2 211 4 1067 . 6 #define PI 3.1415926 #define M 6E24 #define R 6.371E6 double T,H,x; printf(“Input T: “); scanf(“%lf“, x=_;/ 6.67E-11*M*T*T/(4*PI*PI) H=_-R;/ pow(x, 1.0/3) printf(“H=%lfn“, H); 4. 下面的程序段用于从键盘输入 3 个正整数,找到最大数并输出。请填空。 int a,b,c,max; scanf(“%d%d%d“, _;/ max=a if (_)/ maxmax max=b; if (cmax) max=c; printf(“max=%dn“,max); 5. 有如下分段函数,根据输入的 x 值计算 y 值,并输出。请填空。 第 10 页 共 21 页 3 32 2 1153lg3 12 3 12 x x x x x e y x double x,y; scanf(“%lf“, if (x=A / x/10 printf(“最高位数字为:%dn“,x); 14. 国民生产总值(GDP)每年递增 7.5%,编写程序计算并输出需要多少年国民生产总值 才能翻一番。请填空。 int year=0; double a=1; 第 12 页 共 21 页 while (_)/ aaj+1 或 aj=aj+1 t=aj; aj=aj+1; aj+1=t; 20. 以下程序段将一个一维数组中的数逆序存放。请填空。 int a10,i,j,t; for (i=0;i=0/ k=i printf(“the largest string is: %sn“,strk); 25. 函数 copy_string 用于把字符串 from 拷贝到 to 中。请填空。 void copy_string(char *to, char *from) while (_)!=0)/ *from!=0 *to+=*from+; *to=_;/ 0 四、编程题四、编程题 注:每个程序的编写方法有千万种,下面给出的只是其中一种,以供参考。注:每个程序的编写方法有千万种,下面给出的只是其中一种,以供参考。 1. 编写一个程序,输入一个天数,求这个天数包含几周零几天。 #include void main( ) int d,a,b; scanf(“%d“, a=d/7; b=d%7; printf(“%d week(s) and %d day(s).n“,a,b); 2. 输入一行字符,统计其中空格的个数。 #include void main( ) char ch; int count=0; while (ch=getchar( )!=n) if (ch= ) count+=1; printf(“%dn“,count); #include void main( ) char ch; int count=0; scanf(“%c“, while (ch!=n) if (ch= ) count+=1; scanf(“%c“, printf(“%dn“,count); 第 15 页 共 21 页 3. 设有分段函数: 10 101 1 1313lg3 53 1 12 3 x x x x e x y x 编写程序,输入 x 的值,输出 y 值。 #include #include void main( ) double x,y; scanf(“%lf“, if (x #include void main( ) double x,y; scanf(“%lf“, if (x void main( ) 第 16 页 共 21 页 int x,max; scanf(“%d“, max=x; while (x!=0) if (xmax) max=x; scanf(“%d“, printf(“max=%dn“,max); 6. 编写程序,计算 10 1 ! n n,即 1!+2!+3!+10!。 #include void main( ) int i,fact,sum; sum=0;fact=1; for (i=1;i #include void main( ) int m,i,k; scanf(“%d“, k=(int)sqrt(m); for (i=2;i 第 17 页 共 21 页 void main( ) int m,n,gcd; scanf(“%d%d“, for (gcd=m;gcd=1;gcd-) if (m%gcd=0 printf(“gcd=%dn“,gcd); 9. 函数 fun 的功能是计算下面表达式的值: ! 1 . ! 3 1 ! 2 1 1 n sum 请根据已经给出的代码完成 fun 函数。 #include double fun(in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校游戏策划活动方案(3篇)
- 凉面义卖活动策划方案(3篇)
- 促销策划牛奶活动方案(3篇)
- 钢结构吊装施工用电安全与管理方案
- 绿化工程的环境友好型施工方案
- 可乐-商场活动策划方案(3篇)
- 湿地施工方案优化(3篇)
- 重点圈定施工方案(3篇)
- 桩头施工方案详解(3篇)
- 金都购物活动策划方案(3篇)
- CHINET2024年全年细菌耐药监测结果
- 2025年泵站运行工职业技能比武竞赛参考试指导题库500题(含答案)
- 免交社保合同范例
- 充电桩行业出口市场分析
- 体育行业:体育教练简历
- 唾液腺疾病影像诊断讲解
- 全国公开课一等奖七年级生物上册(人教2024年新编)《细菌》精美课件
- 机电一体化系统的设计与控制
- 【MOOC】《大学计算机基础》(北京航空航天大学)章节作业中国大学慕课答案
- 冬季铁路调车安全
- 2024年度园林景观绿化工程EPC总承包合同3篇
评论
0/150
提交评论