c语言循环的判断printf

来源:百度知道 编辑:UC知道 时间:2024/07/04 13:37:51
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
}
printf("%d\n",s);
只有输出一个10,那么下面为什么是15和10,
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
printf("%d\n",s);
}
下面输出是2个价值,请分析一下问题为什么一个是一个问题,一个是另外一个问题
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
printf("%d\n",s);
} 可是我已经把那个printf放在{}里面了

int k,j,s;
for(k=2;k<6;k++,k++) //执行两次 第一次进取k=2第二次进取k=4
{
s=1;
for(j=k;j<6;j++)s+=j;
//j=2 时执行4次,k=4时执行两次 s分别等于15
//第一次运算的15是这么得来的:
//s=1,j=2,k=2,
//s=s+j=1+2 =3
//s=s+j=3+3 =6
//s=s+j=6+4 =10
//s=s+j=10+5 =15
//第二次运算不写了,你自己想吧
printf("%d\n",s);
}

第一个 在循环语句外输出 输出语句就执行了一次;
第二个 在循环语句里输出 外循环了两次 就执行了二次输出语句 输出二个数

一个是在循环里面输出,一个是在循环外面输出。