跪求大佬指導 成績取得了最高分 但是學號和姓名沒有跟著成績一起交換


uj5u.com熱心網友回復:
建議貼代碼。uj5u.com熱心網友回復:
#include <stdio.h>#include <string.h>
#include <conio.h>
int main()
{
int i=0,j=0,t,p,k;
int c[3][4];
char name[3][100],ID[3][15],w[3][100];
printf("請首先輸入三位學生的名字\n");
for(i=0;i<3;i++)
scanf("%s",name[i]);
printf("請輸入三位學生的學號\n");
for(i=0;i<3;i++)
scanf("%s",ID[i]);
printf("請輸入學生成績");
for (i = 0;i < 3;i++)//i代表學生,j代表科目,首先用學生進行大回圈
for (j = 0;j < 4;j++)//科目成績進行小回圈輸入
scanf("%d", &c[i][j]);
for (j = 0;j < 4;j++)//各科成績大回圈
{
for(i=0;i<2;i++)
{
k=i;
for(p=i+1;p<3;p++)
if(c[p][j]<c[i][j])
k=p;
t = c[k][j]; c[k][j] = c[i][j]; c[i][j] = t;
strcpy(w,name[i+1]);strcpy(name[i+1],name[i]);strcpy(name[i],w);
strcpy(w,ID[i]);strcpy(ID[i],ID[i+1]);strcpy(ID[i+1],w);
}
switch (j)
{
case 0:
printf("【%s】%s 的語文成績為最高分:%d\n",ID[2],name[2],c[2][0]);break;
case 1:
printf("【%s】%s 的數學成績為最高分:%d\n",ID[2],name[2],c[2][1]);break;
case 2:
printf("【%s】%s 的英語成績為最高分:%d\n",ID[2],name[2],c[2][2]);break;
case 3:
printf("【%s】%s 的
uj5u.com熱心網友回復:
case 3:printf("【%s】%s 的理科成績為最高分:%d\n",ID[2],name[2],c[2][3]);break;
}
}
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/283788.html
標籤:C++ 語言
