文档库 最新最全的文档下载
当前位置:文档库 › n个学生考m门课

n个学生考m门课

/*有n 个学生,每人考m 门课。
(1)找出成绩最高的学生的学号和课程号
(2)找出有不及格课程的学生的学号及其各门课的全部成绩
(3)求全部学生全部课程总平均分*/

#define N1 6 /* 学生数 */
#define N2 4 /* 课程数 */
#include

void main(){
int no[N1],nok[N1][N2];
int i,j,k,k1,num,num1,num2,num3,num4,numk;
double p[N1][N2],max1,sum=0.0;

for(j=0;jif(j==0){
printf("请输入数学得分:\n");
}else if(j==1){
printf("请输入物理得分:\n");
}else if(j==2){
printf("请输入化学得分:\n");
}else{
printf("请输入英语得分:\n");
}

for(i=0;iprintf("No.%d?",i+1);
scanf("%lf",&p[i][j]);
}
}

for(j=0;jmax1=p[0][j];
for(i=0;iif(max1max1=p[i][j];
}
sum=sum+p[i][j];
}

num=1;
numk=1;
for(i=0;i{
if(max1==p[i][j])
{
No[num]=i+1;
num++;
}

if(p[i][j]<60.0)
{
nok[numk][j]=i;
numk++;
}
}

if(j==0)
{
num1=numk-1;
printf("数学最高分为:%lf\n",max1);
printf("学号为:\n");
}
else if(j==1)
{
num2=numk-1;
printf("物理最高分为:%lf\n",max1);
printf("学号为:\n");
}

else if(j==2)
{
num3=numk-1;
printf("化学最高分为:%lf\n",max1);
printf("学号为:\n");
}

else
{
num4=numk-1;
printf("英语最高分为:%1f\n",max1);
printf("学号为:\n");
}

for(i=1;i<=num-1;i++)
printf("No.%d \n",no[i]);
}

printf("\n 单科成绩不及格者有: \n");
printf("===============================\n");
if(num1==0)
printf("数学无不及格者! \n");
else
{
printf("\n \n 数学不及格者! \n");
printf("\n 学号数学物理化学英语\n");
}

for(k=1;k<=num1;k++)
{
k1=nok[k][0];
printf("No.%d: ",k1+1);
printf("%-10.4lf%-10.4lf%-10.4lf%-10.4lf \n",p[k1][0],p[k1][1],
p[k1][2],p[k1][3]);
}

if(num2==0)
printf("物理无不及格者! \n");
else
{
printf("\n \n 物理不及格者! \n");
printf("\n 学号数学物理化学英语\n");
}

for(k=1;k<=num2;k++)
{
k1=nok[k][1];
printf("No.%d: ",k1+1);
printf("%-10.4lf%-10.4lf%-10.4lf%-10.4lf \n",p[k1][0],p[k1][1],
p[k1][2],p[k1][3]);
}

if(num3==0)
printf("化学无不及格者! \n");
else
{
printf("\n\n 化学不及格者! \n");
printf("\n 学号数学物理化学英语\n");
}

for(k=1;k<=num3;k++)
{
k1=nok[k][2];
printf("No.%d: ",k1+1);
printf("%-10.4lf%-10.4lf%-10.4lf%-10.4lf \n",p[k1][0],p[k1][1],
p[k1][2],p[k1][3]);
}

if(num4==0)
printf("英语无不及格者! \n");
else
{
printf("\n \n 英语不及格者! \n");
printf("\n 学号数学物理化学英语\n");
}

for(k=1;k <=num4;k++)
{
k1=nok[k][3];
printf("No.%d: ",k1+1);
printf("%-10.4lf%-10.4lf%-10.4lf%-10.4lf \n",p[k1][0],p[k1][1],
p[k1][2],p[k1][3]);
}

printf("=============\n");
printf("全部

学生全部课程的总平均分数=%10.6lf",sum /N1 /N2);

}

相关文档
相关文档 最新文档