有以下程式 mainint a 0,b 0,c 0,d 0 if a 1b 1 c 2else d 3 printfd,d,d,d n,a,b

2021-04-18 11:52:51 字數 1900 閱讀 2953

1樓:飛奔的我的錢

答案是編譯有誤,樓上已經說得比較對了,此時的if判斷肯定是成立的,因為是a=1,而不是a==1.

2樓:儒雅隨和一丶

編譯有誤這個下面的else和上面的if根本就配不上隊啊,else就報錯了

3樓:

1120,if括號中已經將1賦值給a並且括號整體也為1,執行if語句,所以bc值改變而d不變依然是0

4樓:amanda追風

答案應該是編譯有誤,因為if只能管到第一個分號的句子,而else出現在第三個分號的句子中,也就意味著這個else沒有與之搭配的if,所以會出現編譯有誤的現象。樓主可以自行執行之。

5樓:匿名使用者

輸出 0,0,0,3

有如下程式 main() { int a=2,b=-1,c=2; if(a < b) if(b<0) c=0; else c++ printf("%d\n",c); } 該程式的輸

6樓:匿名使用者

main()

這樣就清楚了吧,輸出 2

7樓:匿名使用者

結果是 2

if(a

8樓:makka丶

else與離它最近的if構成if…else語句,而當a為2時,第一個if語句不成立,因此什麼也不做,即c的值仍然為2,故選擇c選項。

include main() {int a=2,b=-1,c=2; if(a

9樓:

你寫的這段**有一些問題(語法錯誤),把語法問題改正後:

#include

int main() //推薦主函式用int main()

printf("%d\n",c);

return 0;

} 當a

顯然a=2,b=-1 所以沒執行:

if(b<0) c=0;

else c+=1;

接下來程式輸出c的值,c還是2。如果那邊值是1,那我肯定你是什麼地方打錯了,或者求助的問題和你執行的**存在不一致!

10樓:匿名使用者

樓主,要麼就是你給的**弄錯了,要麼就是答案錯了,無論走的是哪一條語句,結果都不會是1的。

如果按你寫的這個**來看的話。c應該是2

至於你說的答案是1,

如果走if(b<0) c=0這句話結果就是0如果走else c+=1這句話,結果就是3樓主再看看是不是**敲錯了。。。

11樓:

你確定你的程式沒有抄錯?按照格式再貼一遍吧 不要貼在標題上 太亂

12樓:匿名使用者

你確定你沒有手誤啊?

有以下程式 #include main() int a=1,b=2,c=0,d=4; if{(a=2)||(b=1)}c=2;

13樓:匿名使用者

#include

main()

if((c==3)||(d==-1))如果c==3或者d==-1有一個成立,則執行if語句;如果兩個都不成立,則不執行

}你覺得你程式抄寫對了嗎?我覺得程式你抄寫漏了喲。a=2是賦值,而不是比較,我估計應該是a==2.如果是由兩個等號,請看我的註釋。輸出為 1,2,0,4.

14樓:我是羊指甲

這程式能執行嗎。。。。。

以下程式的輸出結果是mainint a 4,b 5,c 0,d d abc printfd n ,d

輸出內容為1 d a b c 由於c 0 所以 c為真,或者說是整形值為1 而邏輯或運算只要有一個1那麼運算結果為1 所以d為1 輸出內容為1 include include main 1 press any key to continue 結果應當為非零數1 a 4 所以!a為0 同樣 b 0 a...

請讀程式 mainint a 1,b 2 printfd n ,a a 1,a 6,b 2則上面程式的輸出結果是

格式字串中只有一個 d,所以只輸出第一個引數的值,它是 a a 1。另外可以上機試一下。輸出bai 2因為 運算子的優先du級低於,逗號 運算子,zhi所以printf d n a a 1,a 6,b 2 等效dao於 printf d n a a 1 a 6 b 2 也就是printf多提供了回2...

有以下程式有以下程式includestdiohmaininta33123456789intb30i

include main int b 3 i for i 1 i 3 i b i a i 2 a 2 i for i 1 i 3 i printf d b i printf n 程式執行後的輸出結果是 1418 這是因為b 1 a 1 2 a 2 1 6 8 14b 2 a 2 2 a 2 2 9 ...