1樓:匿名使用者
考點在於if (a=0)這句,注意是賦值號=,不是判等的==a=0,也就是說a被賦值為0,且該表示式的值為0,那麼顯然y--不會被執行,然後下面的if (a>0)中的y++也不會被執行,只執行y+=y;
y=y+y;
所以y最終為20
2樓:
int a=10,y=10;
if (a==0)
y--;
else if (a>0)
y++;
else y+=y;
這個應該是10。
這個就是++ 這個東西的熟悉,而且根據不懂的機制,答案也許是11.
y++ 先輸出後在執行自增, ++y先自增在執行輸出。
3樓:匿名使用者
int a=10,y=10;
if (a=0) //給a賦值為0 此條件為真 執行y--y--;
else if (a>0)
y++;
else y+=y;
最後 y的結果就是9
4樓:
根據if判斷條件只會執行y++,所以輸出的y應該是11;另外你的if(a=0)寫錯了,應該是if(a==0),a=0是賦值表示式不是邏輯表示式;
5樓:湮魂
答案20,if(a=0) a=0 返回為假,這裡給a賦值為0,之後執行 if(a>0)不成立 再執行else,執行y+=y;意思是y=y+y;y=20
c語言求結果及詳細解釋
10 10 9 0 主要是i 與 i的區別。i 和 i 在 單獨使用時,就是 i i 1。本程式中,y i 相當於 y i i i 1。先使用 i 的值,再令i 1。x 的話就是先使用x的值進行輸出,再讓x x 1 當i 0時,x 10,y 10 第一次輸出 10 10 之後x 9,經過迴圈體 變化...
求這段程式的解釋,c語言,求這段程式的解釋
這段 的作用是判斷,輸入回車以前的這個單詞裡有多少個abc,有多少個其他的字元 teacher 這個單詞裡有a和c各一個,所以v0的答案是2,其他的字元是7 2 5個,所以v1的答案是5 判斷某一串字元中,有多少個c字元 v0 以及有多少個非a,非b和非c v1 的字元 c語言,求這段程式的解釋 每...
C語言程式輸出結果,求大神詳細解釋
include void fun int p 注意所有符號要是在英文狀態下輸入main 輸出結果是21 1 首先要明白,因為這樣定義的fun函式執行完後並不能影響原來a的值,因而main程式中輸出的a值就是預先賦的1 要想函式執行完後改變a的值,則需要 與 來傳遞引數。參考下面的程式 include...