1、 C 语言程序设计试题二 1一、填空题 1二、选择题 2三、阅读程序题 4四、程序填空题 5五、编程题 7C 语言程序设计试题二答案 8C 语言程序设计试题二一、填空题1、C 语言中普通整型变量的类型说明符为 ,在内存中占 字节,有符号普通整型的数据范围是 。2、C 语言中基本的数据类型有: 、 、 。3、设整型变量 n的值为 2,执行语句“n+=n-=n*n”后,n 的值是-4。4、共用体和结构体的定义格式类似,不同点是 。5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,为使变量 a的值为 1,b 的值为 3,c 的值为 2,从键盘输入数据的正确形式应是 。6、有语句:ch
2、ar A =”I am a student”;该字符串的长度是 ,A3= 。7、符号”a”和a的区别 。8、下列程序的输出结果是 。int ast(int x,int y,int * cp,int * dp) *cp=x+y; *dp=x-y; main() int a=4,b=3,c,d;ast(a,b,printf(“%d,%d/n“,c,d); 二、选择题1、以下选项中属于 C语言的数据类型是( B ) 。A. 复合型 B. 双精度型 C. 逻辑型 D. 集合型2、以下说法中正确的是( C ) 。A. C语言程序总是从第一个的函数开始执行B. 在 C语言程序中,要调用的函数必须在 mai
3、n()函数中定义C. C语言程序总是从 main()函数开始执行D. C语言程序中的 main()函数必须放在程序的开始部分3、选出下列标识符中不是合法的标识符的是( D ) 。A. hot_do B. cat1 C. _pri D. 2ab4、下列描述中不正确的是( C ) 。A.字符型数组中可能存放字符串。B.可以对字符型数组进行整体输入、输出。C.可以对整型数组进行整体输入、输出。D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。5、若已定义:int a9, *p=a;并在以后的语句中未改变 p的值,不能表示 a1地址的表达式为( C ) 。A. p+1 B. a+1 C
4、. a+ D. +p6、设有如下定义: int x=10,y=3,z; 则语句 printf(“%dn“,z=(x%y,x/y); 的输出结果是( D ) 。A. 1 B. 0 C. 4 D. 37、定义如下变量和数组: int i, x33=1,2,3,4,5,6,7,8,9;则下面语句for(i=0;i5) printf(“%d“,x);else printf(“%dn“,x - -);A. 7和 5 B. 6和 3 C. 7和 4 D. 6和 410、设有如下定义:char *aa2=“abcd“,“ABCD“;则以下说法中正确的是( D ) 。A)aa数组成元素的值分别是“abcd“和
5、 ABCD“B)aa是指针变量,它指向含有两个数组元素的字符型一维数组C)aa数组的两个元素分别存放的是含有 4个字符的一维字符数组的首地址D)aa数组的两个元素中各自存放了字符a和A的地址11、以下语句的输出结果是( D ) 。int a=-1,b=4,k;k=(+ +a=20) break;if(b%3=1)b+=3; continue; b-=5; 程序的输出结果 a的值为 。四、程序填空题1、求主次对角线之和。main()static int a 3=9,7,5,1,2,4,6,8;int I,j,s1=0,s2=0;for(I=0;Imain()FILE *fp;char c;fp=
6、 ;doc=getchar();fputs(c,fp);while(c!=EOF); ;五、编程题1、三个整数 a、b、c,由键盘输入,输出其中最大的数。2、从键盘输入的 10个整数中,找出第一个能被 7整除的数。若找到,打印此数后退出循环;若未找到,打印“not exist” 。3、有一个一维数组,内放 10个学生成绩,写一个函数,求出平均分。4、有 N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入 N个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。C 语言程序设计试题二答案一、填空题1、int ,2 个字节,-32768 +32767
7、 。2、整型、实型、字符型。 3、- 4。4、结构体的成员占有各自不同的空间,而共用体的各成员放到同一存储空间。5、a=1,b=3,c=27、 ”a”是字符串常量,而a是字符常量。 8、7,1 。 二、选择题1、B 2、C 3、D 4、C 5、C6、D 7、C 8、D 9、C 10、D11、D 12、D 13、B 14、B 15、A16、D 17、B 18、B 19、C 20、D三、阅读程序题(1) 6,8 (2) 3.141593,3.1416,3.142 (3) 4 (4) 2,4 (5) 8四、程序填空题1、I=j I+j=2 2、scanf(“%f”, sum+=f; 3、fopen(“myfile”,w) fclose(fp); 五、编程题1、main() int a,b,c;printf(“请输入三个整数:”); scanf(“%d,%d,%d”, if(amax)max=stuarrI.average; index=I; printf(“总平均成绩最高的学生信息是学号=%ld,性别=%c,姓名=%s,平均成绩=%4.1fn“,stuarrindex.stu_num,stuarrindex.sex,stuarrindex.name,stuarrindex.average);