找考题网-背景图
问答题

请在该程序段右侧写出其输出结果。 main() {char *s="121"; int k=0,a=0,b=0; do{ k++: if(k%2==0) {a=a+s[k]-’0’;continue;) b=b+s[k]-’0’; a=a+s[k]-’0’;}while(s[k+1]); printf("k=%d a=%d b=%d\n",k,a,b); }

【参考答案】

k=2 a=3 b=2[解析] main() {char *s="121"; /*获得字符数组"121"的首地址*/ int k=0,a=0,b=0: do{ k++; if(k%2==0) {a=at s[k]-’0’;continue;) /*"0"以ASCⅡ值参与运算*/ b=b+s[k]-’0’; /*数组s[]内的元素以ASCⅡ值参与运算*/ a=a+s[k]-’0’;}while(s[k+1]); /*循环终止条件是s[k+1]为空*/ printf("k=%d a=%d b=%d\...

(↓↓↓ 点击‘点击查看答案’看完整答案 ↓↓↓)
热门试题