という問題を解いているのですが、最後の個人の名前を出力という部分だけが分かりません。調べても、配列を使った最大値の求め方しか出てこなくて困っています。
C
1#include <stdio.h> 2int main(void){ 3 FILE *fp; 4 char name[20], max_name[20]; 5 double height, weight, bmi, max = 0; 6 7 fp = fopen("score.txt","r"); 8 9 if(fp == NULL) 10 printf("ファイルをオープンできませんでした\n"); 11 else{ 12 while(fscanf(fp, "%s%lf%lf",name,&height,&weight) == 3){ 13 bmi = weight / ((height * 1/100) * (height * 1/100)); 14 if(bmi > max) 15 max = bmi; 16 max_name = name; 17 } 18 printf("BMIが最も高いのは%sさんです\n",max_name); 19 } 20fclose(fp); 21return 0; 22}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/08 03:43
2020/08/08 03:56
2020/08/08 04:21
2020/08/08 06:23
2020/08/08 06:35
2020/08/08 06:46
2020/08/08 06:55
2020/08/08 07:37