關於C語言迴圈結構的乙個簡單問題

2023-03-21 01:40:02 字數 4830 閱讀 9628

1樓:匿名使用者

不是迴圈一次,只不過你的程式有點問題,因為x,y都是整數,所以1/y的值除了第一次等於1,後面的值都等於0(整數運算),所以迴圈多少次pi都等於1

修改一下就可以了:

pi = pi + x*(;

2樓:那一點點執著

迴圈不是一次,程式有問題。pi = pi + x * 1 / y);可以改為pi = pi + x * y));

還可以將 int x = 1,y = 1;改為 float x=,y=;

3樓:農場經理牧羊人

/是除法運算,第二次迴圈,y=3, 1/y=0, 以後的迴圈1/y均為0。最簡單的辦法是,1/y改為,系統會自動進行型別轉換。

4樓:網友

迴圈好像沒問題,int x = 1,y = 1; 應該定義成浮點型就可以了。

5樓:匿名使用者

pi = pi + x * 1 / y); 這句出的問題,強制轉換,把1寫成就行。

6樓:網友

你的xy定義的是int型沒發現嗎,後面x * 1 / y); 求出來是個整形的。

c語言三種迴圈結構的完整句子是什麼?

7樓:手機使用者

您好!c語言迴圈控制語句提供了 while語句、do-while語句和for語句來實現迴圈結構。

while迴圈語句,一般形式如下:

while(表示式)

語句do-while語句,一般形式如下:

do語句。while(表示式);

do-while迴圈是先執行語句,然後對表示式求值。若值為真,則再次執行語句,如此反覆執行,否則將結束迴圈。語句可以是簡單語句,也可以是復合語句。

for語句,for語句是迴圈控制結構中使用最廣泛的一種迴圈控制語句,特別適合已知迴圈次數的情況。

一般形式如下:

for ( 表示式 1]; 表示式 2 ];表示式3] )

語句其中:表示式1:一般為賦值表示式,給控制變數賦初值;

表示式2:關係表示式或邏輯表示式,迴圈控制條件;

表示式3:一般為賦值表示式,給控制變數增量或減量;

語句:迴圈體,當有多條語句時,必須使用復合語句。

其執行過程如下:首先計算表示式1,然後計算表示式 2。若表示式2為真,則執行迴圈體;否則,退出 for迴圈,執行for迴圈後的語句。

如果執行了迴圈體,則迴圈體每執行一次,都計算表示式3,然後重新計算表示式2,依此迴圈,直至表示式 2的值為假,退出迴圈。

for語句的三個表示式都是可以省略的,但分號「;」絕對不能省略。for語句有以下幾種格式:

(1)for(; 語句;

(2)for(;表示式2;表示式3 ) 語句;

(3)for(表示式1;表示式2;) 語句;

(4)for(i=1,j = n; i < j; i ++j - 語句;

用c語言寫乙個最簡單的死迴圈。

8樓:葵姐是我

在c語言的迴圈中,無論是何種迴圈結構,都會在迴圈中指明退出條件,這個條件會是乙個邏輯運算表示式。 要做死迴圈,只需要把對應的退出條件置為恒為真即可。

while迴圈。while迴圈的判斷條件是第一行while後面空格的內容,所以寫成while(1),即可成為乙個死迴圈。這個也是c語言中死迴圈最常見的模式。

for迴圈。for迴圈的判斷條件,是for後面括號中的第二條語句。由於for的特殊性,以下兩種方式,均可以構建死迴圈。

(1) for(expr1; 1; expr2),判斷條件處寫為1, 代表恒為真,與1中while的類似。

for(expr1; ;expr2),由於for允許括號中的三個表示式為空,所以判斷部分留空,同樣達到死迴圈的效果。

9樓:咎秀筠

恩 同樓上。

在迴圈的判斷條件上寫個恒為真的表示式就是個死迴圈了。

10樓:網友

while(1);

或者 for(;;

或者do()

while(1);

三個都是。

c語言三種迴圈結構的完整句子?

11樓:匿名使用者

for語句迴圈。

1 for語句一般形式中的各表示式可以省略,但是分號間隔符不能少。需要注意省略表示式1之前要給迴圈變數賦初值。

2 如省略去表示式2或者3則將造成無限迴圈,這是應在迴圈體內設法結束迴圈。

main()

上面例子中 for語句的表示式完全省去,由迴圈體中的語句實現迴圈變數的遞減和迴圈條件的判斷。當n的值為0時,由break 語句終止迴圈,轉去執行for語句以後的程式。

在此情況下,for語句以等價於while(1)語句,如果在迴圈體中沒有相應的控制手段,將造成死迴圈。

二 while 語句迴圈。

1while語句中的表示式一般是關係表示式或者是邏輯表示式,只要表示式的值為真(非0)即可繼續迴圈。

2 迴圈體中如果包括乙個以上的語句 則必須用{}括起來,組成符合語句。

3 應注意迴圈條件的選擇 以避免死迴圈。

4 允許while語句的迴圈體又是while語句,從而形成雙迴圈。

三 do-while語句。

1 do-while語句和while語句的區別在於 do-while語句是先執行後判斷,因此 do-while至少要執行一次迴圈體,而while是先判斷後執行,如果條件不滿足,則一次迴圈體語句也不執行。while語句和 do-while語句一般可以相互改寫。

2 在if語句和while語句中,表示式後面不能加分號,而在 do-while語句的表示式後面必須加分號。

3 do-while語句也可以組成多重迴圈,而且可以和while語句相互巢狀。在do和while之間的迴圈體由多個語句組成是,也必須用{}括起來形成乙個復合語句。

初學c語言迴圈結構問題

12樓:匿名使用者

你這個題是幹什麼,沒搞懂,如果只是可以執行的話,我修改好了,具體的問題可以描述下,我給你修改下程式!

float a =0,b = 0,c = 0; /記得每次定義變數初始化。

int d = 2;

scanf_s("%f %f",&a,&b);/輸入年增長率的值,輸入年數的值。

c = 1 + a ;

if(b >=

printf("%b,c);

} else

return 0;

13樓:泉熠辟穀夢

最後一行是3個語句。

作用是將a[min]和a[i-1]中間的值對調一下,就是譬如a[min]==3,a[i-1]==5的話,執行過這3句以後就會變成a[min]==5,a[i-1]==3

14樓:匿名使用者

出什麼問題?編譯不通過還是執行結果不對?while裡面第乙個分號可以去掉。

15樓:匿名使用者

c*=c; /這行語句你要表達的是什麼意思?

簡單c語言迴圈結構題目

16樓:

答案是1 -2

第一次列印: x-=2 使得 x等於1 ,列印1。 之後執行判斷while(!

(--x)),x就是把x減去1,這時x等於0, 而!0就是 1, 迴圈條件是真,繼續迴圈。

第二次列印: x-=2使得x等於-2,列印-2。支護判斷while(!(x)),x是-3, !3) 是假,跳出迴圈。

關於c語言迴圈結構

17樓:聽不清啊

int isprime(int a)函式是從2到a/2之間的每乙個數檢查,若a能被其中的任何乙個數整除,立即就返回0,表示a不是素數;若a不能被其中任何乙個數整除,則for迴圈全部結束後退出,然後返回1,表示a是乙個素數。

18樓:黎卿黎

回答親您好,您的問題我已經看到啦,我需要幾分鐘來為您整理優質的答案希望您能耐心等待~希望回答完您可以給個贊哦!祝您生活愉快

語言中提供四種迴圈,即goto迴圈、while迴圈、do…while迴圈和for迴圈。四種迴圈可以用來處理同一問題,一般情況下它們可以互相代替換,但一般不提倡用goto迴圈,因為強制改變程式的順序經常會給程式的執行帶來不可預料的錯誤,在學習中我們主要學習while、do…while、for三種迴圈。

注:for迴圈()中的三部分除了迴圈終止條件外,其他兩部分都可以省略,但標準的for迴圈中,應該把迴圈控制變數的初始化,增量都放在()當中,並且在迴圈體中絕對不應該更改迴圈控制變數;

第四,執行迴圈控制變數增量,轉入第二步;

第四,判斷迴圈終止條件,如果判斷結果為真,則返回第二步;如果為假則直接退出迴圈;

不管哪種迴圈結構,都不能缺少迴圈控制條件初始化,終止條件,迴圈控制變數增量,迴圈體這四部分;while迴圈是先判斷後執行,do while迴圈是先執行後判斷,等迴圈一次之後,其實都是一樣的;

19樓:甜釀圓子

for語句嗎。

先執行2賦值給i,判斷i是不是<=a/2,條件為真就執行下面的if語句,if語句執行完了之後執行i++,為假就輸出1

大概是這樣。

c語言一道簡單的迴圈問題

20樓:網友

5,當i=5時,break語句跳出了while的迴圈。

21樓:匿名使用者

最後輸出值為5,當i加到等於5時 滿足if(i ==5) 執行break; 跳出 while 迴圈。

簡單的C語言問題,求大神,乙個簡單的C語言問題,求大神!

你預計是啥樣的啊。簡單的c語言問題,求大神講解!25 前式表示當輸入的第二個整型數m小於等於0時跳出while迴圈,後式表示當輸入的第乙個整型數n小於等於0時跳出while迴圈。但要注意,第二式雖然是第乙個數 0時退出迴圈,但因為scanf 還要等待輸入乙個數,所以第二個數無論輸入什麼數都會跳出wh...

c語言簡單小題,乙個簡單的C語言題

樓主把 return n 這句給刪除了,這句沒有用。要返回值幹嘛,刪除了就能輸出結果了4000多。過早地遇到了return n,致使main函式執行提前結束,不會再執行printf return可以立即結束幾乎任何乙個函式,無論後面還剩下什麼語句,都不會再被執行。這裡的main 前面沒有給出返回型別...

簡單的C語言問題,乙個簡單的C語言問題

指標型別就是陣列名。b a就是把a 的陣列名賦值給了 b,則 b就儲存了a陣列。因為是b 所以先賦值陣列a給b 然後,b再自加。則b就為1.因為 b已經儲存了陣列a,所以 b的頭位址開始從陣列a 1 儲存,此時 b 20,30,40,50 因為運算優先順序是單目運算子高,所以先運算 所以,事實上 b...