宝慕林7152068
2018-08-09 20:03
#include <stdio.h>
int main()
{
int sum ,num;
for(sum=0,num=0;num<=3&&sum<=5&&1;num++,sum++)
{
sum += num;
printf("num=%d,sum=%d\n",num,sum);
}
return 0;
}
为什么循环到num=2,sum=5,就不往下面循环了?条件都满足啊
for(sum=0,num=0;num<=3&&sum<=5&&1;num++,sum++)
{
sum += num;
printf("num=%d,sum=%d\n",num,sum);
}
(1).num=0 , sum=0 满足
sum+=num=0 输出 sum=0 num=0
下一步:sum++ -> sum=1 ,num++ -> num=1 ,
(2.)num=1 , sum=1 满足
sum=sum+num=1+1=2 输出 sum=2 num=1
下一步:sum++=2+1=3 , num++=1+1=2
(2).num=2 , sum= 3 满足
sum=sum+num=3+2=5 输出sum=5 num=2
下一步 :sum++=5+1=6 (不满足!!!), num++=2+1=3
num=2 , sum=5 sum++ -> sum=6 ,num++ -> num=1 , sum=sum+num=1+1=2
sum执行完sum++后 sum就成了6了 不符合了sum<=5 循环终止
C语言入门
926028 学习 · 20793 问题
相似问题