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分)的学生编号、姓名和不及格的课程数。