2016-09-22 8 views
0

ここはbmi電卓のコードです。 私は別のbmiを計算したいのか、ユーザーが停止したいのかを尋ねる最後に質問を追加したいと思います。 私はyまたはnの答えでこの質問をしたいと思います。ユーザーが再度プレイしたいかどうかを尋ねるループ(y/n)

  • Y =別のBMI
  • を計算し、N =これまでさようなら

マイコード:

#include<stdio.h>; 
void main() 
{ 
float w,h,bmi; 
printf("vul uw gewicht in in kilogram."); 
scanf("%f",&w); 
printf("vul uw hoogte in in meters. (bijvoorbeeld: 1.75)"); 
scanf("%f",&h); 
bmi=w/(h*h); 
printf("bmi: %f",bmi); 
bmi<18.5?printf(" je bent best wel dun eet een burger :p"):(bmi<25)?printf(" lekker gewicht, blijf zo doorgaan"):(bmi<30)?printf(" ik zou wat minder gaan eten als ik jou was"):printf("Oh Oh, u bent in gevaar"); 
} 
+1

をお試しくださいあなたの現在の 'main'のほぼすべての周りに。 – Riley

+0

[CとC++で 'main()'を返すもの](http://stackoverflow.com/questions/204476/) –

+3

そして、そのような '?:'三項演算子を悪用しないでください - if(...)... else if(...)... else ... 'を使用します。また、 '#include'行の最後のセミコロンは完全に不要です - 私はそれが現在のものとコンパイルするのに少し驚いています。 –

答えて

1

は `行うwhile`ループを使用して、この

#include<stdio.h>; 
void main() 
{ 
    char opt='y'; 
    while(1) 
    { 
    float w,h,bmi; 
    printf("vul uw gewicht in in kilogram.\n"); 
    scanf("%f",&w); 
    printf("vul uw hoogte in in meters. (bijvoorbeeld: 1.75)\n"); 
    scanf("%f",&h); 
    bmi=w/(h*h); 
    printf("bmi: %f",bmi); 
    bmi<18.5?printf(" je bent best wel dun eet een burger :p\n"):(bmi<25)?printf(" lekker gewicht, blijf zo doorgaan\n"):(bmi<30)?printf(" ik zou wat minder gaan eten als ik jou was\n"):printf("Oh Oh, u bent in gevaar\n"); 
     printf("calculate again : n for exit, y to continue?\n"); 
     scanf("%c&*c",&opt); 
     if(opt=='n') 
     { 
      printf("EXIT\n"); 
      break; 
     } 
    } 
} 
関連する問題