设j为int型变量,则下面for循环语句的执行结果是______________

设j为int型变量,则下面for循环语句的执行结果是______________
for(j=10;j>3;j--)
{
if (j%3) j--;
--j;
--j;
printf("%d",j);
}
答案是:7、4
(我好像转入了牛角尖,麻烦高人解救:j--到底是如何运算的.详解!)
第一个j--,j先取出来也就是10,然后再自减1,就等于9.那么第2个j--是,j是等于先取出来的10,还是,真正自减运算后的9呢?这个始终搞晕~
其他人气:668 ℃时间:2020-11-26 02:56:43
优质解答
for(j=10;j>3;j--){if (j%3) j--; //这句话是:只要j%3不等于0,j就减1--j; //这句话是j减1--j; //这句话是j减1printf("%d",j); //输出j}首先,j=10;因为 j%3不等于0 ,所以执行if内的语句,j-1,此刻j=9;再往后,有两次...
我来回答
类似推荐
请使用1024x768 IE6.0或更高版本浏览器浏览本站点,以保证最佳阅读效果。本页提供作业小助手,一起搜作业以及作业好帮手最新版!
版权所有 CopyRight © 2012-2024 作业小助手 All Rights Reserved. 手机版