為什麼[前兩行加函數名]會發生程式錯誤(而不加上就可以執行程式)
#include
#include
main()
{
float_x,y,r,w,counter,e,pi;
counter=0;
r=11500;
w=r*r;
do
{
{for(x=1;x<=r;x++)
{for(y=1;y<=r;y++)
____if(x*x+y*y<=r*r)
____counter=counter+1;}
pi=4*counter/w;
}
e=fabs(3.14159-pi);
}while(e>0.00001);
printf(\"pi=%f\\nr=%f\",pi,r);
r=r+100;(這裡加這個好奇怪’加太大會錯誤為何呢?)
}
〔----是空白〕
2006-01-28 09:13:09 · 4 個解答 · 發問者 劉星宇 4 in 電腦與網際網路 ➔ 程式設計
#include#include這兩行不寫上去
我試過是可以執行的
2006-01-30 18:34:32 · update #1
滷肉腳
你寫這樣是什麼(因改版前不可以有空格所以用--)
2006-02-05 08:19:00 · update #2
竹
你的意思我看不懂
可以寫初學者看的懂的嗎?
2006-02-05 08:24:46 · update #3
你的程式怎麼有那麼多的底線阿,還有你那for loop的大括號應該是在for loop的後面吧,你的程式是不是應該寫這樣阿
#include
#include
main()
{
float x,y,r,w,counter,e,pi;
counter=0;
r=11500;
w=r*r;
do
{
for(x=1;x<=r;x++)
{
for(y=1;y<=r;y++)
{
if(x*x+y*y<=r*r)
counter=counter+1;
}
pi=4*counter/w;
}
e=fabs(3.14159-pi);
}while(e>0.00001);
printf("pi=%f\nr=%f",pi,r);
r=r+100;
}
2006-02-01 18:47:55 · answer #1 · answered by shinjy 2 · 0⤊ 0⤋
加太大會錯誤
可能是你的值超過float 的range吧
宣告成double float 看看
2006-02-07 10:40:09 · answer #2 · answered by chris 3 · 0⤊ 0⤋
把你的error message copy出來, 這樣會比較知道你的程式究竟出了什麼問題
如果是加了include出問題, 那你可以去看看是不是環境設定那裡出問題
沒有把include的目的指到正確放.h檔的目錄
2006-01-31 21:07:35 · answer #3 · answered by 竹 3 · 0⤊ 0⤋
錯的一踏糊塗.....
2006-01-29 14:38:49 · answer #4 · answered by ? 2 · 0⤊ 0⤋