1樓:apple林
你的程式應該是這樣吧:
if(!a) b++;
else if(a==0)
printf("%d\n",b);
if(!a) 裡面!a=0;
所以判斷if(a==0),由於a=1,所以這個if判斷為false,不執行大括號裡面的語句。
所以直接輸出printf("%d\n",b);
因此結果為0.
2樓:匿名使用者
int a = 1,b = 0;
if(!a) --> xx
else if(a == 0) --> xx--> ok
printf("d\n", b); ---> b = 0;
3樓:
if (!a) // a = 1,所以 !a = 0,不執行
b++;
else if (a == 0) // 不執行
4樓:匿名使用者
ifint a = 1, b=0;
if(!a) b++;
else if(a==0)
{if(a) b+= 2;
else b += 3;
}printf("%d\n",b);
這樣一看就清楚
5樓:匿名使用者
a為數字int型別 又不是布林型別
有關C語言執行結果的問題
要說明白這個問題,就要講到輸入輸出流的概念。c語言的輸入和輸出都是在一個緩衝區裡面進行,c語言碰上scanf會先檢查輸入流,如果為空,則提示要求使用者輸入,使用者一直輸入直到敲完回車,然後將所有的輸入都送給輸入流,由程式處理。如果不為空,則直接從輸入流處理。來看看樓主的輸入。scanf第一次執行,要...
C語言這個函式執行結果為什麼是0,4,
c a a a b,b 4 最先執行的是 a,a變成1 然後執行的是 a a,a變成0 然後執行的是c a,c變成0 相當於不變 然後執行的是a b,a變成0 相當於不變 然後執行的是b 4,b變成4 所以最後結果是a 0,b 4,c 0 這是一個逗號表示式,逗號表示式的結果取決於最後一個表示式的結...
c語言下列程式執行結果int a 7,b
岔路程式緣 下列程式的執行結果是 d include int a 7,b 3 void fun int x,int y main a.4,7 b.7,3 c.2,6 d.8,6 答案選d,原因是 1 首先程式開頭定義的a 7,b 3屬於全域性變數。它在所有函式中有效。2 其次在main函式中又定義了...