C语言问题 有关while语句的

C语言问题有关while语句的下列程序的输出为()。main(){inty=10;while(y--);printf("y=%d\n",y);}A.while构成无限循环... C语言问题 有关while语句的下列程序的输出为()。
main()
{ int y=10;
while(y--);
printf("y=%d\n",y);
}
A.while构成无限循环
B.y=0
C.y=-1
D.y=1

为什么选C啊,我知道那个--y相当于y!=0,但是为什么不是y=10啊
展开
 我来答
庄政警
2017-12-03 · TA获得超过9916个赞
知道大有可为答主
回答量:1113
采纳率:94%
帮助的人:883万
展开全部
while(y--);//注意末尾有分号,那就是没循环体了,所以printf只有等循环结束才会执行,那就是输出循环结束后的y了,循环结束后,y是-1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听不清啊
高粉答主

2017-12-03 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
每次先取y的值判断(取完后y的值再减1),如果取到y的值不等于0就循环。
所以当取到y的值为0时(y随后就变为-1)就退出循环。所以是选 C
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式