C语言卷1
选择题
1.设有如下定义,int a[100],则数组下标区间为()
A.0 ~ 99
B.1 ~ 99
C.0 ~ 100
D.1 ~ 100
2.下面合法的标识符(变量的名字)是 ()
A. auto
B. define
C. 6a
D. c
3.下列可以表示字符型常量的是()
A.'t'
B."a"
C."\n"
D.297
4.C语言对函数的正确描述是 ()
A.可以嵌套调用,不可以递归调用
B.可以嵌套定义
C.嵌套调用,递归调用均可
D.不可以嵌套调用
5.若有下列程序段
char x[80];
sacnf("%s",x);
printf("%s",x);
复制代码
从键盘上输入字符串“zhang san”,则输出结果为()
A.zhang
B.zhangsan
C.zhang san
D.san
6.在宏定义 #define PI "3.14159"中,用宏名PI 代替一个 ()
A.常量
B.单精度数
C.双精度数
D.字符串
7.若用数组名作为函数调用的实参,传递给形参的是()
A.数组的首地址
B.数组第一个元素的值
C.数组中全部元素的值
D.数组元素的个数
8.C语言允许函数值类型缺省定义(默认定义),此时该函数值隐含的类型是()
A.float
B.int
C.long
D.double
9.设有如下定义
int (*ptr)();
复制代码
则一下叙述中正确的是
A.ptr是指向一维数组的指针变量
B.ptr是指向int 型数据的指针变量
C.ptr是指向函数的指针变量,则函数返回一个int型数据
D.ptr是一个函数名,该函数返回的是指向int类型数据的指针
10.打开文件时,若文件使用方式选用字符串 “rb”,则表示
A.打开一个已存在的二进制文件,只能读取数据
B.打开一个文本文件,只能写入数据
C.打开一个已存在的问不能文件,只能读取数据
D.打开一个二进制文件,只能写入数据
判断题
1.不同函数中可以使用相同名字的变量
2.定义一维数组时,可以将该数组的长度省略
3.continue和break有着相同的作用
4.在条件表达式中,非0 代表为 真
5.在分支结构switch中,case后面跟的一定是常量
6./运算(除运算),要求运算数必须是整数
7.C语言本身没有输入输出语句,要是实现输入输出必须调用相应的函数
8.break语句只能用于循环中
9.continue语句只能用于循环中
10.函数参数在做调用时,实际参数必须与形式参数一致,包括数量和数据类型。
编程题
输入3 × 5 的矩阵,求其中最大数的行和列的下标。
C语言卷2
选择题
1.包括标准库函数 scanf() 声明的头文件是 ()
A. stdio.h
B. math.h
C. stdlib.h
D. time.h
2.C语言规定,函数的返回值类型是由 ( ) 决定的
A.return 语句中的表达式类型
B. 调用该函数时的主调函数类型
C.调用该函数时由系统临时
D. 定义函数时所指定的函数返回类型
3.判断字符串a和b内容是否相等,应当使用
A. if(a == b)
B. if (a = b)
C. if ( strcpy (a,b) )
D. if ( strcmp(a,b) )
4.叙述正确的是 ()
A.在 C 程序中,main函数必须位于程序得最前面
B.C语言本身没有输入输出语句。
C.C语言得每行只能写一条语句。
D.在对一个 C 程序进行编译的过程中,可以发现注释的拼写错误
5.对于整型变量 x,与 while (!x)等价的是
A. while (x != 0)
B. while (x == 0)
C. while (x != 1)
D. while ( ~ x)
6.若有定义
int i = 0, x = 0;
int a[3][3] = {1,2,3,4,5,6,7,8,9};
复制代码
则以下程序段运行后 x 的值为( )
for(;i < 3; i++) x += a[i][2-i];
复制代码A.0
B.12
C.15
D.18
7.若有定义
int *p, a = 4;
p = &a;
复制代码
则以下均代表地址的是
A.a , p
B.&a , p
C.&a , *p
D.a , *p
8.执行语句
for (k = 2; ++k < 4; k ++) ++k;
复制代码
后,变量 k 的值为
A.2
B.4
C.5
D.6
9.下列对C语言字符型一维数组的描述中,错误的是
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入、输出
C.可以在赋值语句中通过赋值运算符“=”对字符数组赋予字符串
D.不可以用关系运算符对字符数组中的字符串进行比较
10.如果需要打开一个已经存在的非空文本文件“Demo”,在文件尾部添加新的数据,下面正确的选项是
A. fp = fopen("Demo","r");
B. fp = fopen("Demo","r +");
C. fp = fopen("Demo","a +");
D. fp = fopen("Demo","w +");
判断题
1.C语言规定,else总是与他上面的、最近的、尚未配对的if配对
2.switc 后面圆括号内的表达式的值和case 后面的常量表达式的值都必须是整型或字符型,不允许是浮点型
3.*(a[i] + j) 与 a[i] [j] 的含义相同
4.函数可以嵌套定义,可以嵌套调用
5.函数的形参只能在函数内部使用
6.C语言中,编译预处理后,所有符号常量名和宏名都用相应的字符串替换。
7.在对全部数组元素赋初值时,必须指定数组的长度
8.数组元素在内存中是顺序存放的,他们的地址是连续的
9.空指针的值为 NULL
10.指针不能实现对数据的间接访问
编程题
设计结构型,包含学生的编号、姓名、4科成绩。
编写程序。输入100名学生信息存入结构类型的数组变量中,然后输出有成绩不及格(<60分)的学生编号、姓名和不及格的课程数。