20.下面程序段的输出结果是 【20】 。 int a[]={1,2,3,4,5,6,7},*p; p=a; *(p+3)+=2; printf (\ %d\\n\ A) 6 7 B) 1 5 C) 1 6 D) 1 4
21.能为指针变量p正确赋值的是 【21】 。 A) int a,*p=a; B) int a,*p=&a; C) int a,*p; D) int a,*p; *p=a; *p=&a;
22.下面程序段的输出结果是 【22】 。
int a[2][3]={1,3,5,11,13,15},*p[2]; p[0]=a[0]; p[1]=a[1];
printf (\ A) 13 B) 12 C) 14 D) 5
23.假设下面程序段中第一个printf函数的输出结果是200,则第二个printf函数的的输出结果是 【23】 。
float b[15],*p=b;
printf(\printf(\
A) 234 B) 20d C) 252 D) 21a
24.下面程序段的输出结果是 【24】 。
char *s[]={\char **p=s;
printf(\A) 字符W的ASCII码值 B) 字符W C) 字符a 的ASCII码值 D) 字符a
25.已知:0≤i≤10,则 【25】 是对数组元素的错误引用。
int a[]={1,2,3,4,5,6,7,8,9,0},*p,i; p=a; 【31】A) p+i B) a[p-a] C) *(a+i) D) *(&a[i]))
第 5 页 共 13 页
26.已知一个函数定义为: void func( ) { }
则void的含义是 【26】 。 A) 执行该函数后没有返回值 B) 执行该函数后不返回 C) 该函数可以返回任意类型的数据 D) 该函数返回整型数据
27.定义函数时,如果省略函数的存储类型和数据类型,则默认的存储类型和数据类型分别是 【27】 。
A) auto和int B) extern和int C) auto和viod D) extern和void
28.下面程序的运行结果为 【28】 。
int f(int a) {int b=0; static c=3; b++; c++; return(a+b+c); } main() { int i; for(i=0; i<3; i++) printf(\ }
A) 567 B) 5 6 7 C) 579 D) 5 7 9
29.下面程序的运行结果为 【29】 。
int func(int a, int b) { return a+b; } main()
{ int x=2, y=5, z=8, r; r=func(func(x,y),z); printf(\} A) 7 B) 8 C) 13 D) 15
30.C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方法是 【30】 。
A) 形参与实参的结合 B) 函数返回值 C) 同名的局部变量 D) 全局变量
第 6 页 共 13 页
31.C语言规定,函数返回值的类型是由 【31】 。
A) return语句的表达式类型所决定
B) 调用该函数时的主调函数类型所决定 C) 调用该函数时系统临时决定
D) 在定义该函数时所指定的函数类型所决定
32.若有以下的说明,则对初值中整数2的引用方式为 【32】 。
static struct {char ch; int i; double x;
}arr[2][3]={{ 'a',1,3.45},{ 'b',2,7.98},{ 'c',3,1.93}};
A) arr[0][1].ch B) arr[0][1].i C) arr[0][0].i D) arr[1][2].i
33.下列关于数组和结构的叙述中正确的是 【33】 。
A) 构成数组的各个元素和构成结构体的各个成员都必须具有相同的数据类型 B) 构成数组的各个元素和构成结构体的各个成员均占用一段连续的内存 C) 构成数组的各个元素类型必须相同,但所占内存不一定连续
D) 构成结构体的各个成员类型可以不同,且所占内存也不一定连续 34.下面程序的运行结果为 【34】 。
main() { union abc { int a[3]; char c; };
printf(\}
A) 1 B)4 C) 12 D) 13
35.下面程序的运行结果为 【35】 。
main()
{ union abc {int a; char c[2]; }u;
u.c[0]=3; u.c[1]=5; u.a=7;
printf(\}
A) 3 5 B) 3 7 C) 7 5 D) 7 0
第 7 页 共 13 页
36.下面程序的运行结果为 【36】 。
main()
{ enum color{red,green,yellow=5,white,black};
printf(\}
A) 0 1 2 3 4 B) 0 1 5 3 4 C) 3 4 5 6 7 D) 0 1 5 6 7
37.下列语句中,能正确打开A盘STU文件夹下t1.txt文件的是 【37】 。 A) fp=fopen(\ B) fp=fopen(A:\\STU\\t1.txt, \
C) fp=fopen(\ D) fp=fopen(A:\\\\STU\\\\t1.txt, r); 38.设fp是指向文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是 【38】 。 A) '\\0' B) 0 C) NULL D) 非零值
39.C语言中文件的存取方式 【39】 。 A)只能顺序存取,不能随机存取 B)只能随机存取,不能顺序存取 C)可以顺序存取,也可随机存取 D)只能从文件的开头进行存取
40.下列程序的运行结果为 【40】 。
#define PT 3.5
#define S(x) PT*x*x main()
{int a=1,b=2;
printf(\ A) 14.0 B) 31.5 C) 7.5 D) 10.5
二、阅读程序题:(每题 3 分,共 30 分)
(说明:请将正确答案按照题号填写在“填空题答题处”)
1.下列程序的运行结果是 【41】 。
main()
{ int a=353; char b=a;
printf(\}
第 8 页 共 13 页