• 締切済み

Cのプログラムを修正、追加してくれませんか?

C言語のプログラムを修正、追加してください このサイトでコンパイルなど出来ます http://ideone.com/ 以下の問題を解きました また問題文の指示には必ずしたがってください。また、この文章の条件でなく、人数が4人とかそれ以外の時でも出来るようなプログラムでお願いします。 http://i.imgur.com/nuzJv2v.png http://i.imgur.com/c7f3Vh2.png http://i.imgur.com/5aCqDO0.png http://i.imgur.com/9u8hHIM.png 問題は画像になっています #include<stdio.h> #include<string.h> /*構造体型struct Dataの宣言*/ struct Data{ char name[20]; int height; double weight; } data[100]; int cnt; int main(void) { int a; do { printf("**************身長・体重の表示***************\n\n"); printf(" データファイルの読み込み・・・・・(1)\n"); printf(" 全てのデータを表示・・・・・・・・(2)\n"); printf(" 特定のデータを表示・・・・・・・・(3)\n"); printf(" 終わり・・・・・・・・・・・・・・(4)\n\n"); printf("処理番号を入力してください\n"); scanf("%d",&a); } while(a<1 || a>4); return a; } /*read_file関数の宣言*/ int read_file(void) { FILE *fp; char filename[20]; cnt=0; printf("読み込むファイルの名前を入力してください。\n"); scanf("%s",filename); fp=fopen(filename,"r"); if(fp==NULL){ printf("ファイルをオープンできませんでした。\n"); return 1; } while(fscanf(fp,"%c %d %lf",data[cnt].name,data[cnt].height,data[cnt].weight)!=EOF){ cnt++; fclose(fp); printf("ファイルを読み込みました。\n"); } return 0; } /*p_all関数の宣言*/ int p_all(void) { int i; printf("名前 身長(cm) 体重(kg)\n"); for(i=0;i<cnt;i++) { printf("%-2s %5d %.2f\n",data[i].name,data[i].height,data[i].weight); } } このプログラムを while(;;); //1,2,3の場合を場合分け if ( a == 4){ return 0; //終わり } } こうすれば終わりません。 ファイルの読み込みread_all関数はa == 1の場合、 全件読み込みp_all関数ははa==2の場合に実行すればいいのではないでしょうか。 3名前を指定して実行は、p_allを拡張して、ループの中に名前を調べる判定文を追加し、 一致した名前のデータを出力する。 この文章に当てはまるように修正していただき、正しく動作するようにして頂けないでしょうか、よろしくお願いします

みんなの回答

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.2
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「実行すればいいのではないでしょうか」と思うんだったら, 他人に頼らず自分でそうすればいい.

関連するQ&A