一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。
A. la
B. 2a
C. do
D. a.12
2.在C语言中,错误的常数表示是(D)
A. OL
B. 0x6aL
C. ‘6’
D. 1.234E3.5
3.设 int a,x=2;执行语句a=x>0?3*x:(x=10);后,变量x的值是(B)
A. 1
B. 2
C. 6
D. 10
A. 2, 2, 0
B. 3, 3, 1
C. 3, 2, 0
D. 3, 2, 1
5.在C语言中,字符串"\TOP\t\65"的长度是(B)
A. 5
B. 7
C. 9
D. 12
6·设float x;,由键盘输入: 12.45,能正确读入数据的输入语句是(A)
A. scanf(“%5f”,&x);
B. scanf(“%5d”,&x);
C. scanf(“%f”,x);
D.scanf(“%s”,&x)
7·逗号表达式a=26,a3,a*5的值是(B)
A. 12
B. 60
C. 36
D. 41
9.在C语言中,下列运算符中结合性属于自右向左的是(B)
A.&&
B.-
C.<<
D. ->
10.设int (*p) [4];,则p的含义是(D)
A. 指向整型变量的指针数组
B.指向4个整型变量的函数指针?
C. 4个指向整型变量的指针变量s
D.指向具有4个整型元素的一维数组的指针
A.n
b.i
c.o
d.s
12,设 inta[4][3]-{1,2,3,4,5,6,7,8,9,10,11,12);int (* ptr)[3]=a,*p=a[0];,则与数组元素a[1][2]等价的是(A)
A.((p+2) +3)
B.(* (p+3))
C. (*ptr+1) +2
D. *((ptr+1)[2])
13,设int a-11,b=2;,执行下述程序段后,变量a和b的值分别是(do { a/=b++;} while(a>b); B
A. 1,3
B. 1,4
C. 2,3
D. 2,4
14,在C语言中,下列错误的说法是(C)
A、函数可以递归调用
B. 不允许在函数中再定义函数
C.递归程序不可能用非递归算法实现
D.对于continue语句,可以通过改变程序的结构而不使用它
15、设 inta[2][3]={ {1).(2,3)):,则元素a[1][0]的值是C
A. 0
B. 1
C. 2
D. 3
16.C 语言结构体类型变量在程序执行期间(A)
A. 所有成员一直驻留在内存中
B. 只有一个成员驻留在内存中
C. 部分成员驻留在在内存中
D. 没有成员驻留在内存中
A. p->num
B. (*p).num
C. s.num
D. student.num
A.C语言的预处理命令只有宏定义和文件包含
B.预处理命令只能出现在主函数之前
C.所有预处理命令都是以符号"#"开头
D.有些预处理命令不是在源程序编译之前处理
19,已有定义int(*p)():指针p可以(B)
A. 代表函数的返回值
B.指向函数的入口地址
C.表示函数的类型
D. 表示函数返回值的类型
20,下列属于文件包含的命令是(C)
A. #define N 25
B. #endif
C. #include “stdio.h”
D. #else
二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结果填写在答题纸的相应位置上。)
1___17___
#include"stdio.h"
void main(){
int x=15;
while(x<20)
{
x++;
if(x/3!=0) {
x++;break;}
else continue;
}
printf("%d\n",x);
}
2___6 4 2___
#include "stdio.h"
fun(int a[],int i,int j)
{
int t;
if(i<j)
{
t=a[i];a[i]=a[j];a[j]=t;
i++j--;
fun(a,i.j);
}
}
void main()
{
int x