C语言 连续两个for循环 for(i=1;i<=3;i++) for(j=1;j<=2*i;j++) 为啥第二个循环里的j每次都是从1开始?

#include <stdio.h>int main(){ int m=0,i,j,n,a; for(i=1;i<=n;i++) for(j=1;j<=2*i;j++) m++; printf("%d",a); return 0;}第二个for循环里i+1后 j为什么每次都是从1开始呢,j不也是一直在加一吗,如果j每次循环完一次重置,那么i为什么不需要重置为1呢??图片里调试可以看到当i=3时,j重新取1,为什么不取之前的自增量呢

因为这里的内循环,他是对m做两倍的i次自增1。所以为了计数方便,就每次从1开始。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答