求三題C語言題目答案的原因

2021-07-01 01:12:17 字數 1685 閱讀 5027

1樓:慕名曉白

1.while根據對它後面的條件表示式的真假值來判斷是否執行一次迴圈,這裡的條件表示式是n=0,即給n賦值為0,整個條件表示式值為0.

在c語言中,條件表示式的非零值表示真,零值表示假,所以該迴圈執行0次。

2.ss[2]表示由2個abc 結構體組成的陣列,結構體abc由三個int整型數a,b,c組 成

struct abc ss[2]=,};

是對ss[2]中的2個abc結構體的初始化:

ss[0]=

ss[1]=

所以ss[0].a=1,ss[1].b=5,ss[0].a+ss[1].b=6。

3.這裡我們需要對for 語句有很好的理解,

首先i=0將i初始化為0

i<4是條件表示式,判斷是否執行一次迴圈,如果條件滿足

接著進入迴圈體

迴圈體執行完畢後,再執行i+=2,即i=i+2

然後重新回到條件表示式i<4,如此重複直到條件不滿足

為了簡單明瞭,我們可以將這個for語句改寫為等價的while語句:

i=0;

while(i<4)

也即i=0;

while(i<4)

容易看出迴圈執行4次,

i=0:totalprice=totalprice+bookprice[0]=0+10=10;

i=1:totalprice=totalprice+bookprice[1]=10+20=30;

i=2:totalprice=totalprice+bookprice[2]=30+30=60;

i=3:totalprice=totalprice+bookprice[3]=60+40=100

2樓:零度_**

(1)n=2,不滿足n=0;while迴圈不執行所以選a;

(2) 由struct abc ss[2]=,};

得ss[0]=,ss[1]=;

三個元素分別對應a,b,c;

所以ss[0].a+ss[1].b=1+5=6;

(3)bookprice[4]=

得bookprice中的四個元素;

for(i=0;i<4;i+=2)

totalprice=0+bookprice[0]+bookprice[1]+bookprice[2]+bookprice[3]=100;

就這樣了。你看下吧。。

3樓:匿名使用者

第一題:

while(n=0)可以寫為n=0;while(n)即while(0),迴圈條件不滿足,所以迴圈0次

第二題:

這題簡單。

struct abc ss[2]=,};

printf("%d\n",ss[0].a+ss[1].b);

就是的第一項+的第二項

第三題:

for(i=0;i<4;i+=2)

迴圈四次:for迴圈的執行順序是:1.

賦值(i=0)。這步第一次執行完後就不再回頭,即和後面的步驟再無關聯,故我們可以把這一步提前到for語句之前實現。如i=0; for(;i<4;i+=2)。

2.判斷(i<4),如果判斷條件成立,則立刻轉去執行{}裡面的內容;但如果條件不成立,則馬上從這裡結束迴圈。3.

修正(i+=2)。每次執行完函式體的內容後馬上執行該賦值語句。...根據以上說明再仔細推敲吧,相信你會明白為啥選d的。

求c語言程式設計題答案謝謝求C語言程式設計題答案,謝謝!

1.編寫一個程式,要求使用者從終端輸入兩個整數值,檢測這兩個整數,判定第一個數能否被第二個數整除,並在終端上顯示相應的資訊.include main 2.編寫一個程式,把從終端上輸入的整數用英語顯示該整數的每一位數字.如果使用者輸入了392,那麼程式應顯示three nine two.include...

c語言程式設計題,求幫忙,c語言程式設計題目求解,求幫忙 急

提供思路 1 把二維陣列元素統一儲存在一個新的陣列中,然後排序,重新存回二維陣列中。2 先逐行排序,再逐列排序,然後先比較每行 或每列第一個元素 根據大小直接交換行,接著比較每行第二個元素,根據大小交換除第一個元素外的行,直到最後一列。其中方法1簡單粗暴,方法2需要邏輯些,方法2可以寫一個函式,傳遞...

c語言題目,求高手,一道c語言題,求高手解釋下這題!

3.程式設計判斷m是否為素數,已知0和1不是素數。include int isprime int m main 4.輸入一行字元,統計其中的英文字元 數字字元 空格及其它字元的個數 include include define arr size 80 main printf english char...