有以下程序 #include main() { char *s="12134"; int k=0, a=0 ; while( s[ k +1 ] ) { k++; if ( k % 2 ==0 ) { a = a + ( s[ k ] - ’0’ +

admin2015-07-31  37

问题 有以下程序
#include
main()
{
char  *s="12134";
int  k=0, a=0 ;
while( s[ k +1 ] )
{
k++;
if ( k % 2 ==0 )
{
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/S5i0FFFM
0

最新回复(0)