哪位c语言高手帮忙解决下~!

来源:百度知道 编辑:UC知道 时间:2024/06/10 23:20:01
#include<stdio.h>
main()
{int k,j,m;
for(k=5;k>=1;k--)
{m=0;
for(j=k;j<=5;j++)
m=m+k*j;
}
printf("%d\n",m);
}
求m的值 答案为15
但不知道为什么
高手帮忙解决下~!

因为每一次循环前m都等于0
所以只看最后一次
k=1
m=0
m=0+1*1,j+1
m=1+1*2,j+1
m=3+1*3,j+1
m=6+1*4,j+1
m=10+1*5
跳出循环
m=15

什么问题啊啊!

k=5时,m=0,m=m+k*j=0+5*5=25
k=4了,m=0,m=0+4*4=16,再m=0+4*5=20
k=3了,m=0,m=0+3*3=9,再。。。。
k=1,最后一次循环后是m=0+1*5=5
所以m=5

显示的是 10