看板 C_and_CPP 關於我們 聯絡資訊
不好意思 遇到一個問題如下 就是當我想要59784/100時 想要得到的數字是597.84 可是不管怎麼用cast 還是只能出現597.00 請問這裡是出了什麼問題呢? #include <stdio.h> #include <stdlib.h> int RandAvg(int n); int main() { float ans; printf("100個0~1000的亂數平均值為:\n"); ans=RandAvg(100); printf("平均值為%.3f\n",ans); system("pause"); return 0; } int RandAvg(int n) { int i, j, sum=0; float avg=0; int number[100]={0}; srand((unsigned) time(NULL)); for(i=0;i<=n-1;i++) { number[i]=rand()%1000+1; printf("%3d ",number[i]); if(i%10==9) printf("\n"); } for(j=0;j<=n-1;j++) { sum=sum+number[j]; } printf("\n總和為%d\n", sum); avg=(float)sum/(float)n; return avg; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.243.66
ianfang:RandAvg 的 return type寫錯了... 05/14 17:41
sanforever:int RandAvg(int n) 05/14 17:52
sanforever:=> float RandAvg(int n) 05/14 17:53
tohru:原來犯下了很笨的錯誤 = = 05/15 08:52