C语言程序设计基础: 程序阅读,写出该题的运行结果 #include<stdio.h> main(

C语言程序设计基础:程序阅读,写出该题的运行结果#include<stdio.h>main(){intk=0;charc='A';do{switch(c++){case'... C语言程序设计基础:
程序阅读,写出该题的运行结果
#include<stdio.h>
main( )
{ int k=0;char c='A';
do
{switch(c++)
{case'A':k++;break;
case'B':K--;
case'C':k+=2;break;
case'D':k%2;continue;
case'E':k=k*2;break;
default: k=(c?1:0); }
k++;
printf("%c k=%d\n",c-1,k);
}while(c<'F');


答案是A k=2
B k=4
C k=7
E k=15

请解释一下答案为什么是这个?
展开
 我来答
喵不语__
推荐于2017-10-09 · TA获得超过2.5万个赞
知道大有可为答主
回答量:3281
采纳率:75%
帮助的人:612万
展开全部
c=A时,switch括号中c++后c=B,所以执行case B,k--后k=-1,由于后面无break,继续执行case C.k+=2=1,然后break跳出switch,继续k++之后k=2,用printf输出时c-1后输出为A,k仍为2,
在进行while括号中的c<F判断,直到不满足结束!
永远的小厘
2015-09-04 · TA获得超过461个赞
知道小有建树答主
回答量:607
采纳率:0%
帮助的人:79万
展开全部
你学习一下break和continue的区别,然后再思考一下i++与++i后就明白了
追答
你看你就是新手,而且没学过其它编程语言
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式