while( i<4 && (scanf("%f",&a) == 1) ){}
妳的寫法,要先做讀語句,再判斷 條件。
第二種寫法,當 i<4 不滿足時,將不執行讀語句,直接得 假 而 退出循環。
===========================================================
修改如下:
#include <stdio.h>
int main (void){
float a;
float b = 0;
int i = 0;
while((scanf("%f",&a) == 1) ) {
if (i==0) b=a;
if (a > b)b = a;
i++;
if (i==4) break;
}
printf("%.1f",b);
getch();
return 0;
}
如果4個數都小於0,妳的初值 b=0 就不合適了,要用:
if (i==0) b=a;
每循環壹次,i++, 及時判斷 是否 有4 個數了, 有了就不必再輸入:
if (i==4) break;