c语言期末习题整理(带答案)

上传人:第*** 文档编号:55633572 上传时间:2018-10-03 格式:DOCX 页数:53 大小:131.04KB
返回 下载 相关 举报
c语言期末习题整理(带答案)_第1页
第1页 / 共53页
c语言期末习题整理(带答案)_第2页
第2页 / 共53页
c语言期末习题整理(带答案)_第3页
第3页 / 共53页
c语言期末习题整理(带答案)_第4页
第4页 / 共53页
c语言期末习题整理(带答案)_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《c语言期末习题整理(带答案)》由会员分享,可在线阅读,更多相关《c语言期末习题整理(带答案)(53页珍藏版)》请在金锄头文库上搜索。

1、第 1 页 共 59 页目 录考点:简单 C 语言程序的构成和格式.2考点:常量、变量和标识符.3考点:整形数据.4考点:实型数据.5考点: 字符串.5考点: 字符型常量.5考点:赋值语句.6考点:赋值表达式.7考点:算数表达式.8考点:自加、自减运算符和逗号运算符.9考点:数据输出.10考点:条件表达式构成的选择结构.13考点:if 语句和用 if 语句构成的选择结构 .13考点:关系运算和逻辑运算.14考点:switch 语句以及用 switch 语句和 break 语句构成的选择结构 .15考点:while 语句和 while 语句构成的循环17考点:do-while 语句和 do-wh

2、ile 语句构成的循环结构.18考点:for 语句和用 for 语句构成的循环结构 .19考点:for 循环嵌套.20考点:循环结构的嵌套.21第 2 页 共 59 页考点:一维数组的定义和一维数组元素的引用.22考点:二维数组的定义和二维数组元素的引用.23考点:全局变量及其作用域和生存期,全局变量及其作用域和生存期.25考点:调用函数和被调用函数之间的数据传递.27考点:函数的定义和返回值.29考点:指针.31考点:程序分析.32.考点:简单 C 语言程序的构成和格式 1.在一个 C 程序中_。A、main 函数必须出现在所有函数之前B、main 函数可以在任何地方出现C、main 函数必

3、须出现在所有函数之后D、main 函数必须出现在固定位置2. 以下关于函数的叙述中正确的是_。A、C 语言程序将从源程序中第一个函数开始执行B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C、C 语言规定必须用 main 作为主函数名,程序将从此开始执行,在此结束D、main 可作为用户标识符,用以定义任意一个函数2.以下说法中正确的是_。A、#define 和 printf 都是 C 语句B、#define 是 C 语句,而 printf 不是C、printf 是 C 语句,但#define 不是D、#define1和 printf2都不是 C 语句1 #define 只

4、是一个预处理命令,用来做替换,在编译的时候被展开罢了。 2 printf 是一个 C 标准库函数,函数原型定义在 stdio.h。从严格意义上来说,库函数不属于 C语言。第 3 页 共 59 页3.若 k 是 int 型变量,且有下面的程序片段,程序片段的输出结果是_。k=-3if(k0); D、if(b=0) m=1;n=2;5.有以下程序main()int a=0,b=0;a=10; /* 给 a 赋值 */b=20; /* 给 b 赋值 */printf(“a+b=%dn“,a+b);程序运行后的输出结果是_。A、a+b=10 B、a+b=30 C、30 D、出错6.以下叙述中正确的是_

5、。A、C 程序中注释部分可以出现在程序中任意合适的地方B、花括号“”和“”只能作为函数体的定界符3C、构成 C 程序的基本单位是函数,所有函数名都可以由用户命名4D、分号是 C 语言之间的分隔符,不是语句的一部分57.以下叙述中错误的是_。A、C 语句必须以分号结束B、复合语句在语法上被看作一条语句C、空语句出现在任何位置都不会影响程序运行63 花括号既可以做函数的定界符,也可以表示复合语句。4 一个 C 程序中必须有且只能有一个由“main”命名的主函数,其他函数由用户自行命名;5 分号是 C 语句的必要组成部分。第 4 页 共 59 页D、赋值表达式末尾加分号就构成赋值语句3. 以下关于函

6、数的叙述中不正确的是_。A、C 程序是函数的集合,包括标准库函数和用户自定义函数B、在 C 语言程序中,被调用的函数必须在 main 函数中定义C、在 C 语言程序中,函数的定义不能嵌套D、在 C 语言程序中,函数的调用可以嵌套考点:常量、变量和标识符78.下列定义变量的语句中错误的是_。A、int _int B、double int_C、char For D、float US$9.以下不合法的用户标识符是_。6 在 for 循环中,循环条件语句为空时,则不判断循环条件,循环将无休止地进行下去,导致了此循环为死循环。7 变量名首字母必须为字母(a-z A-Z),下划线(_),或者美元符号($)

7、开始,不能以数字开头,不能包含除字母、下划线、数字以外的其他字符,并且用户标识符不能与 C 语言中的 32 个关键字同名。A、j2_KEY B、DoubleC、4d D、_8_10.以下 4 组用户定义标识符中,全部合法的一组是_。A、_main enclude sinB、If -max turboC、txt REAL 3COMD、int k_2 _001 11.以下定义语句中正确的是_。A、char a=A b=B;B、float a=b=10.0;C、int a=10,*b=D、float *a,b=12.以下不能定义为用户标识符的是_。A、scanf B、VoidC、_3com_ D、i

8、nt13.以下有 4 组用户标识符,其中合法的一组是_。A、For -sub CaseB、4d DO SizeC、f2_G3 IF abcD、WORD Void define第 5 页 共 59 页14.C 语言中最简单的数据类型包括_。A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型15.下列选项中,合法的 C 语言关键字是_。A、VAR8 B、cher C、integer D、default16.以下不能定义为用户标识符的是_。A、Main B、_0 C、_int D、sizeof17.下列叙述中正确的是_。A、C 语言中既有逻辑类型9也有

9、集合类型108 var 在 Pascal 作为程序的保留字,用于定义变量。9 在 C 语言中没有逻辑类型,逻辑类型用整型来表示B、C 语言中没有逻辑类型但有集合类型C、C 语言中有逻辑类型但没有集合类型D、C 语言中既没有逻辑类型也没有集合类型考点:整形数据1118.若有以下定义和语句:int u=010,v=0x10,w=10;printf(“%d,%d,%dn“,u,v,w);则输出结果是: _。10 C 语言中没有集合类型11 整型(INTEGER)数据是不包含小数部分的数值型数据,用字母表示。整型数据只用来表示整数,以二进制形式存储。 十 进 制 整 数 ,如 123,-456,0八

10、进 制整 数 ,以 0 开 头 ,如 0123 表 示 十 进 制 数 83,-011 表 示十进 制 数 -9。十 六 进 制整 数 ,以 0x 或 0X 开 头 ,如 0x123 表 示 十 进 制 数 291,-0X12 表 示 十 进 制 数 -18。第 6 页 共 59 页A、8,16,10 B、10,10,10C、8,8,10 D、8,10,1019.在 C 语言中,不正确的 int 类型的常数是_。A、32768 12 B、0 C、037 D、0xAF20.以下程序的输出结果是_。main( )int k=17;printf(“%d,%o13,%x 14n“,k,k,k);A、1

11、7,021,0x11 B、17,17,17C、17,0x11,021 D、17,21,1112 C 语言中 int 类型的常数的范围是:-3276832767。13 %o 读入八进制整数 14 %x,%X 读入十六进制整数 21.在 C 语言中,合法的长整型常数是_。A、0L B、4962710C、324562第 10 页 共 59 页程序运行后的输出结果是_。A、0 20B、1 C、1 D、NULL 没定义,出错39.设有说明语句:char a=72;则变量 a_。A、包含 1 个字符 B、包含 2 个字符C、包含 3 个字符 D、说明不合法考点:赋值语句40.以下能正确计算定义且赋初值的语

12、句是_。A、int n1=n2=10; B、char c=32;C、fioat f=f+1.1; D、double x=12.3E2.541.以下合法的赋值语句是_。A、x=y=100 B、d-;20 在 C 语言中 NULL 的 ASCII 码值为 0,而输出函数要求以整型格式输出,故最后的输出数为0。C、x+y; D、c=int(a+b);42.下列语句中符合 C 语言语法的赋值语句是_。A、a=7+b+c=a+7; B、a=7+b+=a+7;C、a=7+b,b+,a+7 D、a=7+b,c=a+7;43.请选出合法的 C 语言赋值语句_。A、a=b=58 B、i+;C、a=58,b=58

13、 D、k=int(a+b);考点:赋值表达式44.当 c 的值不为 0 时,在下列选项中能正确将 c 的值赋给变量 a、b 的是_。A、c=b=a; B、(a=c)(b=c);C、(a=c) D、a=c=b;45.以下选项中非法的表达式是_。A、0main()int a,b,d=241;a=d/100%9;b=(-1)printf(“%d,%dn“,a,b);A、6,1 B、2,1 C、6,0 D、2,047.以下循环体的执行次数是_。main()int i,j;for (i=0,j=1; i5) printf(“%dn“,x);else printf(“%dn“,x-);则输出是_。A、7

14、B、6 C、5 D、466.有以下程序main ()char a1=M, a2=m;printf(“%cn“, (a1,a2)26);以下叙述中正确的是_。A、程序输出大写字母 MB、程序输出小写字母 mC、格式说明符不足,编译出错D、程序运行时产生出错信息67.以下程序的输出结果是 _。main()26 逗号运算符:优先级别最低,它将两个及其以上的式子联接起来,从左往右逐个计算表达式,整个表达式的值为最后一个表达式的值。如:(3+5,6+8)称为逗号表达式,其求解过程先表达式 1,后表达式 2,整个表达式值是表达式 2 的值,如:(3+5,6+8)的值是14,a=(a=3*5,a*4)的值是

15、 60,而(a=3*5,a*4)的值是 60, a 的值是 15。第 15 页 共 59 页int a;printf(“%dn“,(a=3*5,a*4,a+5);A、65 B、20 C、15 D、1068.设有如下程序段int x=2002,y=2003;printf(“%dn“,(x,y);则以下叙述中正确的是_。A、输出语句中格式说明符的个数少于输出项的个数,不能正确输出B、运行时产生错误信息C、输出值为 2002D、输出值为 200369.有以下程序main()int x,y,z;x=y=1;z=x+,y+,+y;printf(“%d,%d,%dn“,x,y,z);程序运行后的输出结果是_。A、2,3,3 B、2,3,2 C、2,3,1 D、2,2,170.设有以下定义int a=0; double b=1.25;char c=A;#define d 2则下面语句中错误的是_。A、a+; B、b+; C、c+; D、d+27;27 自加运算对象可以是整型变量也可以是实型变量,但不能是表达式和常量。本题中,#deftne d 2 定义了 d 为常数 2,不能对 d 进行自加运算。第 16 页 共 59 页71.以下程序的输出结果是_。main()int x=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号