当前位置:首页 > c语言考试习题库
第一章 C语言概述
一、选择题
1.以下叙述中正确的是( )。 A)C语言比其它语言高级
B)C语言源程序可以不用编译就能被计算机识别执行
C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D)C语言出现的最晚,具有其它语言的一切优点 2.构成C语言源程序的基本单位是( )。 A)子程序 B)过程 C)文本 D)函数 3.在一个C程序中,main函数( )。 A)必须出现在所有函数之前。 B)可以在任何地方出现。 C)必须出现在所有函数之后。 D)以上都不对。
4.下列叙述中正确的是( )
A)C程序的执行是从main()函数开始,到本程序的main()函数结束。 B)注释语句是必不可少的。
C)main函数必须放在其他函数之前。 D)printf()是系统提供的输出函数。 5.以下描述正确的是( )。
A)最简单的C源程序可以不包括任何内容 B)编译程序对C源程序编译时不检查语法 C)C程序中没有输入输出语句
D)在C程序中,至少必须有一个Main( )函数
6.下列语句或命令中,不符合C语言程序书写规则的是( )。 A)int m; B)int m、n;
C)m=10; D)#include “stdio.h” 二、填空题
1.C语言是一种___________化程序设计语言。
2.C语言源程序文件的后缀是___________,经过编译后,生成文件的后缀是___________,经过连接后,生成文件的后缀是___________。
3. C程序中语句必须以___________作为结束标记。 4.一个C语言程序是从___________函数开始执行的。
第二章 数据类型与基本运算
一、选择题
1.下面不正确的字符串常量是( )。
A)‘AB’ B)\’ab \
C)\)\
2.下面四个选项中均是合法的整型常量的是( )。 A)340 B)02 C)-0X2A D)0X15
025 0x 985,768 0x2 -11 03f 4d2 -760x 3.C语言中运算对象必须是整型的运算符是( ) A)%= B)/ C)= D)<=
4.以下不能用来表示整型常数的进制是 ( )。 A)二进制 B)八进制 C)十进制 D)十六进制 5.设有定义: int a= 10;
则表达式a += a*=a的值是( )。
A)10 B)100 C)1000 D)200 6.设有如下定义:
int a=1,b=2,c=3,d=4,x=2,y=2;
则表达式(x=a>b)&&(y=c>d)运算后,y的值为( )。 A)1 B)2 C)3 D)4
7.能正确表示逻辑关系“a大于等于10或a小于等于0”的C语言表达式是(A)a>=10 or a<=0 B)a>=0|a<=10 C)a>=10&&a<=0 D)a>=10||a<=0
8.如果a=1, b=2, c=3,d=4,则条件表达式a
9.设变量x, y为int型,则值不等于6的表达式为( )。 A)(x=y=5, x+y, x+1) B)(x=y=5, x+y, y+1) C)(x=5, x+1, y=5, x+y) D)(y=5, y+1, x=y, x+1) 10.若有以下定义:
char a; int b; float c; double d; 则表达式a*b+c-d值的类型为( )。
A)float B)int C)char D)double 二、填空题
1.设m是int型变量,则表达式(m=2*3, m+4), m*3的值为____________。 2.以下程序段执行后z的值是____________。 int x, y, z ; x=1;y=2; z=1.0/y*x;
3.以下程序段的输出结果是____________。 main( ) {
。 ) char m; m=’B’+32;
printf(\}
则输出结果是____________。
4.表达式7/3*(int)3.14/(int)(1.2*(5+2.3))的数据类型为____________,表达式的值为____________。
5.以下程序段的输出结果是____________。 #include “stdio.h” main( ) {
int x=3, y=3, z=1;
printf(“%d %d\\n”, (++x, y++), z+2); }
6.以下程序的输出结果是____________。 main() {
int x=100;
printf(\}
7.以下程序段的输出结果是____________。 #include “stdio.h” main( ) {
int k, g; k=016; g=110;
printf(\}
8.以下程序段的执行结果是____________。 float f1, f2, f3,f4; int m1, m2; f1=f2=f3=f4=2; m1=m2=1;
printf(\
9. 设x=3, y=4, z=5, 则表达式((x+y)>z)&&(y= =z)&&x||y+z&&y+z的值为____________
10.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量’\\101’是____________。
三、程序题
1.从键盘输入一个大写字母,改用小写字母输出。
2.由键盘输入10个学生的数学考试成绩,计算他们的平均分并保留2位小数。 3.已知x的取值范围是[3,20]和[150,250],计算下列表达式的值 (1)(x>=3)&&(x<=20)&&(x>150)&&(x<250)
(2)(x>=3)||(x<=20)||(x>150)||(x<250) (3)(x>=3)&&(x<=20)||(x>150)&&(x<250) (4)(x>=3)||(x<=20)&&(x>150)||(x<250) 4.设int a=3, b=4,c=5;float k=3.6; 计算下列表达式的值: (1)a/b*c (2)a*b%c (3)k/a+2*b
(4)(int)(k+6/a*b) (5)sizeof(a) (6)a+=a*=a+b (7)c%=b-a/2 (8)!(a*b-12) (9)(a*b-2)= =c+3 (10)c>b>a
第三章 选择结构程序设计
一、选择题
1.C语言中逻辑真等价于( )
A)整数1 B)整数0 C)非零数 D)TRUE
2.为了避免嵌套的if-else语句的二义性,C语言规定else总是(A)与缩排位置相同的if组成配对关系 B)与在其之前未配对的if组成配对关系
C)与在其之前未配对的最近的if组成配对关系 D)与同一行上的if组成配对关系
3.若有以下语句组,则输出结果是( ) int x=0; if (x++<0)
printf (\――x); printf(\
A)-1 B) 1 C) -1-1 D)-1 0 4.以下程序段运行后x的值是( )。
int a,b,x,c; a=b=c=0; x=35; if(!a) x--;
else if(b);
)
共分享92篇相关文档