1樓:陳開武
程式段 int k=0; while(k=1) k++; while迴圈體執行的次數為無
限次。理由:在執行while(k=1)時,會先執行賦值回語句,令 k 的值等答於 1,然後再判斷while的迴圈條件,此時 while(k=1)相當於 while(1),迴圈條件始終為真,無限迴圈執行。
再舉一個與上面條件差不多的例子:
#include
int main(int argc, char *argv);return 0;
}控制檯會不斷輸出2,如下圖:
2樓:熱情的
試題解析迴圈條件是" k=1",該表示式恆為真,所以程式構成死迴圈 答案選 a。
3樓:倒黴熊
a 因為迴圈條件 k=1 一直為真。
賦值語句的值為其等號右側的值,也就是說 k=1 的值為1,也就是為真。
4樓:
a.無限次
#include
int main(int argc, char *argv);return 0;
}你會發bai現一直輸出:2
原因:k=1 是一條du賦值語句,令zhi k 的值等於 1。語句 k = 1 的結果是dao 永遠是 1 , while(k=1) = while(1) ,是死迴圈,執行無限次
k == 1 才是一條邏輯語句,判斷 k 的值是否等於1 。如果 k 的值等於 1 , k==1 的結果是1,否則是0。
5樓:ok真命小精靈
正確答案為a. ***……
6樓:匿名使用者
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
int k=0: while(k=1)k++; while 迴圈的次數是多少
7樓:好程式設計師
死迴圈,因為你迴圈條件是個賦值語句k=1,這樣的話k永遠為1,也就是條件成立,所以是死迴圈,如果寫成k==1的話,則一次也不執行迴圈。
1. 有以下程式段 int k=0 while(k=1)k++; while 迴圈執行的次數是 (
8樓:匿名使用者
答案選擇a的原因是k=1是一個賦值語句,把1賦值給k
c語言中0為假,非0為真,所以1永遠為真,所以是無限次
判斷相等的邏輯表示式是k==1,不可弄混
9樓:makka丶
因為 while(k=1) 不是來while(k==1),while 裡面的 k=1 變成了自
賦值語句,而不是實際目的與1去比較是否相等。這些程式 就會執行 k=1,然後再執行 k++;此時k=2;然後又執行 while(k=1),讓k=1;然後又再執行 k++;此時k=2;,又再 while(k=1),讓k=1,又再執行 k++;此時k=2;,如此迴圈,不會停止;此題我猜想是 想考 while語句 的語法 以及 賦值語句 與 比較語句的寫法;while(k=1) 與 while(k==1) 意思完全不同,同時 if(k=1) 與 if(k==1) 意思也完全不同。
下列程式段中while迴圈執行的次數為 int j=0;while(k=1)k++ a無限次
10樓:匿名使用者
這個函式協調求解,還是需要代入數值再進行求解的
11樓:顏駿寒
前面j寫錯了吧,是k吧!裡面迴圈體一次都不會執行
12樓:太原綁哥
選a,因為迴圈條件表示式k=1,是將1賦值給k,使得永遠為真。=是賦值號,而==才是等於號(你的疑惑在此)。
int k=0; while(k=1)k++; 則while迴圈執行的次數是
13樓:and董姣姣
無限次,因為while條件是賦值語句,沒有判斷退出條件
一定記得好評哦
有以下程式int a 0,b 0,c 0,d 0 if a 1 b 1 c
if a 1 b 1 c 2 這一行有bai問題 if和else之間永遠du只能有一 條語句zhi,而daob 1 c 2 是兩條語句!c語言一條語句可以寫在版多行,權多條語句也可以寫在一行,關鍵是就分號,一個分號到上一個分號 或者是,使多條語句組成一條複合語句。如果把b 1 c 2 改為b 1,c...
c語言有以下程式段答案給的是c,為什麼
do語句第一次執行後的結果是 s 1,t 1如果輸入的n不等於t,那麼t會繼續減2,t會陸續等於 3,5,7,2n 1 很明專顯要想結束屬 這個死迴圈,輸入的值必須是負奇數,才能使while t n 的條件表示式不成立。不知道我有沒有解釋清楚,希望對你有所幫助。t 1,1 2 1.1 2 3 3 2...
若a b c均為int型變數,則執行以下程式段後的輸出結果為b a 10,a 5,c
10 逗號表示式 是按從左往右運算,以最右邊的表示式的值最為整個表示式的值 輸出10 因為後面括號裡是一個逗號表示式,其值是最後一項的值,所以是10 10 從做到右,最後以最後一個式子為結果 若a是int型變數,則執行表示式a 25 3 3後a的值為 5 若a是int型變數,則執行表示式a 25 3...