お願いします

お願いします

ベル さんの書込 (2005/07/12(Tue) 22:21)

はじめまして.大学2年のものです. 上の成績表を下の成績表のように科目別の 成績順にならびかえるプログラムを作れと いう問題がわかりません.上の表はできるのですが どのようにすればしたのようにならびかえができるのかが わかりません.お願いします

名前太郎次郎三郎四郎 英語60809075 数学70859050 理科80658580

順位1番2番3番4番 英語三郎次郎四郎太郎 数学三郎次郎太郎四郎 理科三郎太郎四郎次郎

Re: お願いします

マサシ さんのレス (2005/07/12(Tue) 23:07)

こんばんは.

言語は何をお使いかはわかりませんが, C言語ならば,点数を2次元の配列に 格納してソート(大きい順に並び替えて) して,その配列をもつ人物の名前に入れ 替えればできると思いますよ.

ソートのアルゴリズムはたくさんあるので WEBで調べればたくさん出てきます.

Re: お願いします

ベル さんのレス (2005/07/14(Thu) 19:20)

点数を大きい順に並べるまではできたのですが 名前で入れ替えるにはそこからどうしたらよいのでしょか? お願いします.

Re: お願いします

ken さんのレス (2005/07/14(Thu) 20:27)

こんばんわ

>点数を大きい順に並べるまではできた のでしたら(C言語の場合),構造体を使って名前を参照すればよろしいでしょう. 構造体の使い方は,お手持ちのC言語テキストかwebを検索すればでてくるでしょう.

Re: お願いします

ベル さんのレス (2005/07/14(Thu) 23:02)

調べたのですが構造体ですがどのように利用すればよいのか がわかりません.すみませんがお願いします.

Re: お願いします

篠原 さんのレス (2005/07/14(Thu) 23:15)

http://www9.plala.or.jp/sgwr-t/c/sec15.html

これなんか,わかりやすく説明してあると思います. 構造体は,違う型の変数を一つにグループみたいにして扱えるので,構造体の配列をつくり,その要素に各々の名前や点数を格納したらよいでしょう.