数数小木块
2014-10-15 21:14
1211 查看
描述
在墙角堆放着一堆完全相同的正方体小木块,如下图所示:
因为木块堆得实在是太有规律了,你只要知道它的层数就可以计算所有木块的数量了。
现在请你写个程序 给你任一堆木块的层数,求出这堆木块的数量.
输入第一行是一个整数N(N<=10)表示测试数据的组数)
接下来的n行 每行只有一个整数 ,表示这堆小木块的层数,输出对应每个输入的层数有一个输出,表示这堆小木块的总数量,每个输出占一行样例输入
样例输出
[/code]
描述
在墙角堆放着一堆完全相同的正方体小木块,如下图所示:
因为木块堆得实在是太有规律了,你只要知道它的层数就可以计算所有木块的数量了。
现在请你写个程序 给你任一堆木块的层数,求出这堆木块的数量.
输入第一行是一个整数N(N<=10)表示测试数据的组数)
接下来的n行 每行只有一个整数 ,表示这堆小木块的层数,输出对应每个输入的层数有一个输出,表示这堆小木块的总数量,每个输出占一行样例输入
2 1 5
样例输出
1 35
解题思路如下:
小木块共有N层,每层小木块的个数为1+2+...+n,可以用两个循环实现解题,第一个循环控制层数,第二个循环计算每层小木块的个数。
其代码如下所示:
#include<stdio.h> int main() { int n,m,i,j,s=0,sum=0; scanf("%d",&n); while(n--) { sum=0; scanf("%d",&m); for(i=1;i<=m;i++){ s=0; for(j=1;j<=i;j++) { s=s+j; } sum=sum+s; } printf("%d\n",sum); } return 0; }
[/code]