アプリ版:「スタンプのみでお礼する」機能のリリースについて

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を拡張して、ループの中に名前を調べる判定文を追加し、
一致した名前のデータを出力する。

この文章に当てはまるように修正していただき、正しく動作するようにして頂けないでしょうか、よろしくお願いします

A 回答 (2件)

    • good
    • 0

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

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!