计算机等级考试二级C语言试题及答案20
编程题 1.三个整数a、b、c,由键盘输入,输出其中最大的一个数。 2.输出1900~2000年中所有的闰年。每输出3个年号换一行。(判断闰年的条件为下面二者之一:能被4整除,但不能被100整除。或者能被400整除。) 3.请编一个函数int fun(int a),它的功能是:判断a是否是素数,若a是素数,返回1;若不是素数,返回0。A的值由主函数从键盘读入。 4.有N个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。 参考答案: 1、main() {int a,b,c; printf(“请输入三个整数:”); scanf(“%d,%d,%d”,&a,&b,&c); if(aif(belse printf(“max=%d ”,b); else if(aelse printf(“max=%d ”,a); } 2、#include”stdio.h” main() {int I,n; for(n=0,I=1900;I<=2000;I++) {if(I%4==0&&I0!=0||I@0==0) {printf(“%d ”,I); n++; } if(n%3==0) printf(“ ”); } } } 3、#include”stdio.h” int fun(int a) {int I; if(a==2) return 1; I=2; while((a%I)!=0&&I<=sqrt((float)a)) I++; if(a%I==0) {printf(“%d is not a prime!”,a); return 0; } printf(“%d is a prime!”,a); return 1; } main() {int x; printf(“ please enter a number:”); scanf(“%d”,&x); printf(“%d ”,fun(x)); } 4、#include"stdio.h" #define N 3 struct student {long stu_num; char sex; char name[15]; int score[4]; float average; }; main() {int I,j,index; float sum,max; struct student stuarr[N]; for(I=0;I{printf("please input %d student information: ",I+1); scanf("%ld,%c,%s",&stuarr[I].stu_num,&stuarr[I].sex,stuarr[I].name); for(j=0;j<4;j++) scanf("%d",&stuarr[I].score[j]); } for(I=0;I{sum=0.0; for(j=0;j<4;j++) sum+=stuarr[I].score[j]; stuarr[I].average=sum/4.0; } max=stuarr[0].average; index=0; for(I=1;Iif(stuarr[I].average>max) {max=stuarr[I].average; index=I; } printf("总平均成绩最高的学生信息是学号=%ld,性别=%c,姓名=%s,平均成绩=%4.1f ",stuarr[index].stu_num,stuarr[index].sex,stuarr[index].name,stuarr[index].average); } 相关资料 |