当前位置:文档之家› C语言程序设计试卷及答案

C语言程序设计试卷及答案

C语言程序设计试卷及答

This model paper was revised by the Standardization Office on December 10, 2020
C语言程序设计
一、单项选择题(共15小题,每题4分,共60分)
1、下列有关C语言的叙述中错误的是()。

A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数
C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现
2、以下不能定义为用户标识符的是()。

A) MAIN B) _HJ C) 2ong D) LINE1
3、以下能正确定义一维数组的是()。

A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;
C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};
4、以下关于main()函数的说法,正确的是。

A) main()必须是程序的第一行 B)main()可以有参数
C) 一个程序可以有多个main() D)main()可以被用户自定义的函数调用
5、设char str1[10] = “ABCDE”, str2[10] = “xyz”;
则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()。

A) 9 B) 8 C) 5 D) 3
6、若用数组名作为函数调用的实参,则传递给形参的是()。

A) 数组的首地址B) 数组第一个元素的值 C) 数组中全部元素的值D) 数组元素的个数
7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()。

A)void B)double C)int D)char
8、下面不能正确进行字符串赋值操作的语句是( )。

A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD"; C) char *s;s="ABCDEF";
D) char *s="ABCD";
9、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 ( )。

A)++p B)++(*p) C) *(++p) D) *(p+=2)
10、变量的指针,其含义是指该变量的。

A) 值 B) 地址 C) 名 D) 一个标志
11、若有说明int (*p)[3];则以下是正确的叙述。

A) p是一个指针数组
B) p是一个指针,它只能指向一个包含3个int类型元素的数组
C) p是一个指针,它可以指向一个一维数组中的任一元素
D) (*p)[3]与*p[3]等价
12、指针变量一定不能进行的运算是。

A)+ B)- C)= D)/
13、若有语句int array[3][4];以下对下标为i和j的数组元素的引用不正确的
是。

A) array[i][j] B) *(*(array+i)+j) C) *(array[i]+j) D)
*(array+i*4+j)
14、一般情况下,文件占用存储空间较多。

A)二进制文件 B)文本文件 C)随机文件 D)顺序文件
15、若对文件的操作未到文件尾时,feof(fp)函数的返回值是。

A)EOF B)1 C)0 D)不定的非零值
二、阅读下列程序,在程序后面的横线上,写出该程序的功能或给出运行结果。

(共3小题,第1、2题13分,第3题14分,共40分)
1. #include <stdio.h>
void main()
{ char ch; int k=0;
for(ch=’A’;ch<’H’;ch++,k++)
if(k%2==0) printf(“%c”,ch);
printf(“\n”);
}
输出结果:
2. #include <stdio.h>
void main( )
{int k=0;
char c=’A’;
do {
switch (c++)
{case ‘A’: k++; break;
case ‘B’: k--;
case ‘C’: k+=2; break;
case ‘D’: k=k%2; break;
case ‘E’: k=k*10; break;
default: k=k/3;
}
k++;
} while(c<’G’);
printf(“k=%d\n”, k);
}
输出结果:
3. #include <stdio.h>
void main()
{ int a[6]={12,4,17,25,27,16},b[6]={27,13,4,25,23,16},i,j;
for(i=0;i<6;i++) {
for(j=0;j<6;j++) if(a[i]==b[j])break;
if(j<6) printf(“%d”,a[i]);
}
printf(“\n”);
}
输出结果:
一、单选题
1) D 2) C 3) C 4) B 5) D
6) A 7) C 8) C 9) C 10) A
11 B 12 D 13 D 14 B 15 C 16 17 18 D 19
二、阅读程序
1、ACEG
2、8
3、4252716。

相关主题