• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プログラミングの質問です)

プログラムで個人データを一覧表示・保存する方法

このQ&Aのポイント
  • プログラムを使って、キーボードで入力した個人データ(名前、性別、年齢)を構造体に入れ、一覧を画面に表示し、ファイルに保存する方法について教えてください。
  • また、表示する際に名前を辞書順にソートする方法も教えてほしいです。
  • 具体的なプログラムの書き方や関数の使い方など、詳細な解説をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

stdlib.hヘッダーファイル定義の qsort()関数を使うのが定番かと。 http://tct.ivory.ne.jp/text/prog/C/note/qsort.htm //プロトタイプ宣言 int myComp(const void *a, const void *b); int main(void) { ・・・省略・・・ qsort(person_p, count, sizeof(struct person), myComp); ・・・省略・・・ return 0; } int myComp(const void *a, const void *b) { struct person *x, *y; x = (struct person *)a; y = (struct person *)b; return strcmp(x->name, y->name); }

すると、全ての回答が全文表示されます。

その他の回答 (3)

noname#137556
noname#137556
回答No.3

入力データをリストに挿入するときに,常に順序を保ちながら, 挿入していくという考え方もありますね。

すると、全ての回答が全文表示されます。
  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.2

名前順に並び替えればいいのです。 課題なら講師なり先生に聞けば。そのために授業料払っているのだから。

すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

一般に「名前」には 1つの書き方に対し複数の読み方が存在します. したがって, 「辞書順になるようにする」ためには「読み方」を示すデータが必要です. それを追加し, さらに入力したデータをソートしてから出力することになろうかと. もちろんこれは最低限なので, やろうと思えばどこまでも複雑にできます.

すると、全ての回答が全文表示されます。

関連するQ&A