有以下程序: main() {int k=5,n=0; while(k>0) {switch(k) { defaul
有以下程序: main() {int k=5,n=0; while(k>0) {switch(k) { default:break; case 1:n+=k; case 2: case3:n+=k; } k-; } printf("%d\n",n); } 程序運行后的輸出結果是 ______。
A.0
B.4
C.6
D.7
正確答案:D解析:在switch語句中,表達式的值與某一個case后面的常量表達式的值相等時,就執(zhí)行此case后面的語句,若所有的 case中的常量表達式的值都沒有與表達式的值匹配的,就執(zhí)行default后面的語句,各個case和default的出現(xiàn)次序不影響執(zhí)行結果。所以在本題中,當k=5和k=4的時候,case都沒有與其匹配的值,所以執(zhí)行了default語句;當k=3時,執(zhí)行“case3:n+=k;”得n=3,然后執(zhí)行default;當k=2時,執(zhí)行“case2:case3:n+=k”得n=5,然后執(zhí)行defa
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。