void main(){char *s="12134211",int v[4]={0,0,0,0} k,i ;for(k=0,s[k];k++){ switch(s[k]){ case '1' :i=0 ;case '2' :i=1 ;case '3':i=2 ;case '4' :i=3 ; }v[i]++;}for(k=0,k程序运行结果是_____

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/19 04:17:25
void main(){char *s=
xR]oP+n`r-`4GHck V/I)> B݀m10pʿ_sYE<<9dXN/QArfc(ZἜ HFP1"D)X|@tVL;1P,3<B,K 7>B)E`rrD]@n"Z[pXڶF{j\KyC/IH_qhLԝ`nF\rR4,- z ''G~Q,>zJ,w qםLGD&>xf#%/+?aaHo\ա>O>`ô1׊mMMwL;iװXg-ثZcC;O#Ϊo"lwgcEzPI\h Nލ0U@q~bs`6evkBYxCS/>`hn':xp ,F#G8}$9Taqs rt2*o/Z-:3|8yJ6=FK=D*ټ@KD̶Niٶٝ^Kи

void main(){char *s="12134211",int v[4]={0,0,0,0} k,i ;for(k=0,s[k];k++){ switch(s[k]){ case '1' :i=0 ;case '2' :i=1 ;case '3':i=2 ;case '4' :i=3 ; }v[i]++;}for(k=0,k程序运行结果是_____
void main()
{char *s="12134211",int v[4]={0,0,0,0} k,i ;
for(k=0,s[k];k++)
{ switch(s[k])
{ case '1' :i=0 ;
case '2' :i=1 ;
case '3':i=2 ;
case '4' :i=3 ; }
v[i]++;
}
for(k=0,k
程序运行结果是_____

void main(){char *s="12134211",int v[4]={0,0,0,0} k,i ;for(k=0,s[k];k++){ switch(s[k]){ case '1' :i=0 ;case '2' :i=1 ;case '3':i=2 ;case '4' :i=3 ; }v[i]++;}for(k=0,k程序运行结果是_____
应该是0008
在switch语句中,如果没有break、goto、return或continue等跳出switch,程序会忽视case语句,往下执行.
因此,本题中,不管字符串s中的字母是什么,在进入switch中,最后都会执行i=3.结果,就是数组v的第4个变量v[3]一直增加,结果,就是字符串s有多长,v[3]就有多少,v[0]、v[1]、v[2]都一直是0.最后,输出v,得到的就是0008

1000

你确信case语句后面没有break吗,如果真是现在这样,结果是0007,如果有break语句,结果应该是4211

俺也不懂。55555555555