以下程序的輸出結(jié)果是#include <stdio.h>main(){int j, a[]={1,3,5,7,9,11,13,15},*p=a+5;
以下程序的輸出結(jié)果是#include <stdio.h>main(){ int j, a[]={1,3,5,7,9,11,13,15},*p=a+5; for(j=3; j; j--) { switch(j) { case 1: case 2: printf("%d",*p++); break; case 3: printf("%d",*(--p)); } }}
正確答案:9911本題考查運(yùn)算符及其結(jié)合性。題目中給出的程序的主體主要由for循環(huán)和switch語(yǔ)句構(gòu)成,初始時(shí)定義數(shù)組a[],包括8個(gè)數(shù)據(jù)。定義指針指向a[5],for循環(huán)的循環(huán)變量初始值為3,循環(huán)條件為j!=0,增值為-1,即循環(huán)變量的取值為3,2,1。switch語(yǔ)句的表達(dá)式為for循環(huán)中的循環(huán)變量j。當(dāng)j=3時(shí),switch語(yǔ)句執(zhí)行case 3后面的語(yǔ)句,即輸出*(--p)的值,初始時(shí),指針p指向的值為a[5]=11,*(--p)的值為a[4],即9。第2次for循環(huán)j=2,switch語(yǔ)句執(zhí)行case 2
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。