- 198 名前: ◆/91kCCQXBo mailto:sage [2009/06/29(月) 17:53:49 ]
- >>186 >>196 教室で習ったソート(並び替え)のCソースをくれると、参考にする、かも。
#include <stdio.h> #include <stdlib.h> #define n 9 /* 生徒の数+1 */ #define m 7 /* 科目の数+2 */ int cmp(const int *a, const int *b) { int t = a[1] - b[1]; return (t==0)?0:(t>0?1:-1); } int main() { int k; int index[n][2]; /* ここからは変更無し */ //char namae[n][5] /* ここまでは変更無し */ //printf("%6.0f\n",goukei[i]); } for(k=m-2; k>=0; k--) { /* 科目数のループ */ printf("\n%sの点数で並び替え\n", kamoku[k+1]); if(k == m-2) for(i=1; i<n; i++) index[i][0] = i, index[i][1] = goukei[i]; else for(i=1; i<n; i++) index[i][0] = i, index[i][1] = seiseki[i][k]; qsort(&index[1][0], n-1, sizeof(int)*2, (int (*)(const void*, const void*))cmp ); for(i=1; i<n; i++) { /* 生徒数のループ */ printf("%s", namae[index[i][0]]); for(j=0; j<m-2; j++){ /* 科目数のループ */ printf("%6.0f",seiseki[index[i][0]][j]); } printf("%6.0f\n",goukei[index[i][0]]); } } return 0; }
|

|