姓名:__________________
姓名:__________________年级专业:__________________ 学号:__________________
凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。
…………………………密………………………………封………………………………线…………………………
《复习卷》试卷第PAGE5页
《复习卷》试卷
总分
题号
一
二
三
四
五
题分
得分
得分
一、单选题(每题1分,共计30分)
1、下列选项中,不合法的变量是(D)。
A、int x = 3;
B、char ch = 'c'
C、float f ;
D、case c;
2、下列选项中,不合法的常量是(D)。
A、2
B、'\n'
C、'a'
D、'\483'
3、关于#include这句代码,下列描述中错误的是(C)
A、"#"是预处理标志,用来对文本进行预处理操作
B、include是预处理指令
C、一对尖括号可以去掉
D、stdio.h是标准输入输出头文件
4、假设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,那么逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为( ?C )。
A、0
B、1
C、2
D、3
5、C语言程序的三种基本结构是( A? )。
A、顺序结构,选择结构,循环结构
B、递归结构,循环结构,转移结构
C、嵌套结构,递归结构,顺序结构
D、循环结构,转移结构,顺序结构
6、?关于下面的for循环语句 int i,k; for(i = 0,k = -1;k = 1;i++,k++) ?printf(“*****”); 下列选项中,描述正确的是(B ?)
A、判断循环结束的条件非法
B、是无限循环
C、只循环一次
D、一次也不循环
7、以下定义语句中,错误的是( D? )。
A、int a[]={1,2};
B、char *a[3];
C、char s[10]="test";
D、int n=5,a[n];
8、下列描述中不正确的是(C ? )。
A、字符型数组中可以存放字符串
B、可以对字符型数组进行整体输入、输出
C、可以对整型数组进行整体输入、输出
D、不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值
9、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为( ? D)。
A、该数组的长度
B、该数组的元素个数
C、该数组中各元素的值
D、该数组的首地址
10、在C语言中,引用数组元素时,其数组下标的数据类型允许是( C)
A、整型常量
B、整型表达式
C、整型常量或整型表达式
D、任何类型的表达式
11、若有定义double x = 12.2;则表达式int a = x;则a的值为(C)。
A、0
B、0.0
C、12
D、12.2
12、若有定义: char *a= "China"; , 则 a+3 表示 ?(C)????? 。
A、该字符串的首地址
B、该字符串中字符 n 的值
C、该字符串中字符 n 的地址
D、该字符串中字符 i 的地址
13、下述对C语言字符数组的描述中错误的是( ?C )。
A、字符数组可以存放字符串
B、字符数组中的字符串可以整体输入、输出
C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D、不可以用关系运算符对字符数组中的字符串进行比较
14、C语言中数组下标的下限是(B)。
A、1
B、0
C、视具体情况
D、无固定下限
15、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是( C)。
A、1
B、2
C、2.0
D、2.5
16、关于结构体作为函数参数,下列描述中错误的是(D )
A、结构体可以作为函数参数
B、结构体数组可以作为函数参数
C、结构体指针可以作为函数参数
D、结构体成员变量不可以作为函数参数
17、若有定义: struct ?KeyWord { char Key[20]; int ID; }kw[] = { "void", 1, "char", 2, "int", 3, "float", 4, "double", 5 }; 则printf("%c,%d\n", kw[3].Key[0], kw[3].ID);语句的输出结果为(C )
A、i 3
B、n 3
C、f 4
D、l 4
18、下列关于指针变量的描述,不正确的是(C )
A、在没有对指针变量赋值时,指针变量的值是不确定的
B、同类指针类型可以进行相减操作
C、在使用没有赋值的指针变量时,不会出现任何问题
D、可以通过指针变量来取得它指向的变量值
19、关于C语言中print()函数与scanf()函数,下列描述中正确的是( B?