有以下程序: #include<stdio.h> main() { char*s="12134"; int k=0,a=0; while(s[k+1]) { k++; if(k%2==O) { a=a+(s[k]-’0’+1); continue; } a

admin2021-02-25  23

问题 有以下程序:
#include<stdio.h>
main()
{
char*s="12134";
int k=0,a=0;
while(s[k+1])
{
k++;
if(k%2==O)
{
a=a+(s[k]-’0’+1);
continue;
}
a=a+(s[k]-’0’);
}
printf("k=%d a=%d\n",k,a);
}
程序运行后的输出结果是(    )。

选项 A、k=5 a=15
B、k=4 a=12
C、k=6 a=11
D、k=3 a=14

答案B

解析 当k=0时,执行while一次,得到k=1,a为2;当k=1时,执行while一次,得到k=2,a为4;当k=2时,执行while一次,得到k=3,a为7;当k=3时,执行while一次,得到k=4,a为12。故B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/Nkz0FFFM
0

最新回复(0)