我用C語言寫了個程式可以執行但是得不到結果求解呀

時間 2021-05-04 18:25:42

1樓:匿名使用者

for(n=1;n<=1000000000;x++){

這個迴圈裡面的迴圈變數應該是n吧,你卻來個x++,n就一直是1,當然是個死迴圈。而且你的這個數1000000000太大了,整形的變數會溢位變成負數的,在vc++上的話你可以試試__int64,在dev-c上的話就試試long long

2樓:匿名使用者

/*enter x = 5

sum = 66.5865

press any key to continue*/#include

#include

int main(void)

printf("sum = %.4lf\n",sum); // 輸出double型別資料的格式是%lf

return 0;

}double fact(int n)

return s; // 返回階乘和}

3樓:安靜的小貓

上面的sum沒有初始化,下面還沒看,你的sum應該在定義的時候寫上sum=0,這樣才能顯出結果

4樓:緒景浩守舒

執行結果確實是4

1648

但你的程式中一下值得注意:

cout<

而不是cout<

這樣的低階語法錯誤不應該犯;

而且一般寫程式也不建議使用void

main(),而應使用int

main(int

argc,

char

*argv)

5樓:老采薇可璠

你得不到結果,不知道是不是你的程式還沒有執行完的緣故,for(n=1;n<=1000000000;n++)的迴圈次數太多了。其他的我就不清楚了。

還要提醒你一下的是你的變數denominator,變數名字母太多了,寫程式時要做到變數名簡明,能看懂就行。

我用c語言寫了個程式 可以執行 但得不到結果 為什麼啊·

6樓:匿名使用者

應該是沒有結果出現吧。我覺得應該是整形變數的表示範圍不夠,你的迴圈中用到了1000000000,這個整形變數是表示不了的,而且你還在計算階乘,階乘的結果很空間溢位。階乘的返回值最好用__int64(vc++)或者long long(dev-c)

7樓:匿名使用者

主要原因是你程式有問題,你的count未賦初值,在上面加上count =0就行了。

另外你的n取值過大,當你輸入的x為1和2還可以,但是大於2以後就會在計算fact(n)時超出double的取值範圍,最後只會出現卡死狀態。還有輸出sum時是printf("sum=%.4lf\n",sum);

這是不可取的,所以將n修改小一點才能看看結果,驗證一下程式的正確性。

8樓:匿名使用者

你得不到結果,不知道是不是你的程式還沒有執行完的緣故,for(n=1;n<=1000000000;n++)的迴圈次數太多了。其他的我就不清楚了。

還要提醒你一下的是你的變數denominator,變數名字母太多了,寫程式時要做到變數名簡明,能看懂就行。

9樓:匿名使用者

是不是執行後一閃就關閉了?是這樣的話程式最後加上system("pause");

用C語言編寫“背單詞程式”,用C語言編寫如下程式?

董俊錕 include include include struct word 定義一個word的結構體,裡面的兩個成員分別放英語單詞和相應的漢語翻譯 int point 0 統計分數的 int count1 0 測試的次數 void tianjia struct word str 100 int ...

c語言指標作為函式變數怎麼用,c語言 編一程式 交換兩個變數的值(用指標做函式引數)

最大的寶寶 在函式exe中,應該用指標來改變它指向的值,而不單純改變指標的值。因為這個指標只是一個拷貝,改變它的值毫無意義 void exe int p,int q int main return 0 void exe int p,int q include void exe int p,int q...

簡單C語言程式輸出什麼,乙個簡單的c語言程式,輸入幾句話,輸出相同的幾句話,怎麼寫?

在輸出之前我要告訴樓主你用的cout是c 裡面的輸出函式c的話應該是printf 才對 當然結果我還是會告訴你的 第一 6 6 第二 5 7 第一解釋 a先讓a加一的值賦給a此時a 6,a 是先輸出a的值再給a加一,因為是同一變數所以此時a 6 第二解釋 a 是先輸出a的值再給a加一,此時輸出a 5...