main() { int y=10; do{y--;}while(--y); printf("%d\n",y--); } 求输出结果,详细解及思路
main(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}求输出结果,详细解及思路...
main()
{ int y=10;
do{y--;}while(--y);
printf("%d\n",y--);
}
求输出结果,详细解及思路 展开
{ int y=10;
do{y--;}while(--y);
printf("%d\n",y--);
}
求输出结果,详细解及思路 展开
4个回答
展开全部
main()
{ int y=10;
do
{
y--;//当语句执行第一次循环的时候在这里个Y的值是10当越过这一行之后Y的值被减1
}
while(--y);//因为之前Y的值被减1 现在是9而当它执行到下一行打印命令的时候它的值变成了8
printf("%d\n",y--);//此时输出的值为8,而Y的实际值变成7
}
注 :Y-- 是先进数据运算后将原值减1 而--Y是先将原值减1后再进行数据的运算
输出结果应为
8
6
4
2
当Y为0的时候While语句的判断应该为假,这时候循环终止
6年没用C语言了,有点手生.....
{ int y=10;
do
{
y--;//当语句执行第一次循环的时候在这里个Y的值是10当越过这一行之后Y的值被减1
}
while(--y);//因为之前Y的值被减1 现在是9而当它执行到下一行打印命令的时候它的值变成了8
printf("%d\n",y--);//此时输出的值为8,而Y的实际值变成7
}
注 :Y-- 是先进数据运算后将原值减1 而--Y是先将原值减1后再进行数据的运算
输出结果应为
8
6
4
2
当Y为0的时候While语句的判断应该为假,这时候循环终止
6年没用C语言了,有点手生.....
展开全部
main()
{ int y=10;
do{y--;}//这一句做完,y=9
while(--y);//这一句做完,y=8
printf("%d\n",y--);
}
所以
过程如下;
y--之后:y=9;
--y:y=8
y--:y=7
--y:y=6
y--:y=5
--y:y=4
y--:y=3
--y:y=2
y--:y=1
--y:y=0
循环停止
然后输出:0
之后,y的值变为-1
{ int y=10;
do{y--;}//这一句做完,y=9
while(--y);//这一句做完,y=8
printf("%d\n",y--);
}
所以
过程如下;
y--之后:y=9;
--y:y=8
y--:y=7
--y:y=6
y--:y=5
--y:y=4
y--:y=3
--y:y=2
y--:y=1
--y:y=0
循环停止
然后输出:0
之后,y的值变为-1
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
输出:0
do while循环的终止条件就是while后面的语句的值为false,具体到本题就是--y为0,因为--y是先--在计算表达式的值,所以此时y=0,因此printf的时候就是输出0,需要提醒的是y--是先算表达式的值在--的
do while循环的终止条件就是while后面的语句的值为false,具体到本题就是--y为0,因为--y是先--在计算表达式的值,所以此时y=0,因此printf的时候就是输出0,需要提醒的是y--是先算表达式的值在--的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是0 但是是因为while 括号从9减到0后 (因为while后面有;)再输出y=0,然后又把y-1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询