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

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]={\; B) char s[5]; s=\char *s;s=\; D) char *s=\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 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 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

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

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4