求大神,這個怎么錯了?
#include<stdio.h>
/*求使得1+1/2+1/3+...........+1/n>15的最小n值*/
int main()
{
int n;
float sum = 0;
for (n=1; sum<15; n++)
{
sum+=1/n;
}
printf ("n=%d", n);
return 0;
}
設置個循環條件,sum<15,一旦不滿足條件了就輸出n值,不知道哪里錯了。
#include<stdio.h>
/*求使得1+1/2+1/3+...........+1/n>15的最小n值*/
int main()
{
int n;
float sum = 0;
for (n=1; sum<15; n++)
{
sum+=1/n;
}
printf ("n=%d", n);
return 0;
}
設置個循環條件,sum<15,一旦不滿足條件了就輸出n值,不知道哪里錯了。
2017-01-10
舉報
2017-01-11
1/n 結果是int類型,所以除了當n=1時,1/1=1,其他情況1/2=0,1/3=0。。。所以永遠無法滿足sum<15這個條件。
2017-01-11
試試在1/n前面加個強制類型轉換