7-125 又来一个上三角数字三角形 (10分)C语言实现
输入一个正整数n,输出具有n层的上三角数字三角形。
输入格式:
只有一个正整数n,1<=n<=100。
输出格式:
一个上三角数字三角形,每个数字占四个字符位置。
输入样例:
5
输出样例:
1 6 10 13 15
2 7 11 14
3 8 12
4 9
5
作者
翁恺
单位
浙江大学
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
/*通过观察可知每一行的第一位数即为行数,之后依次输出比前一个数多n,n-1...的数,直到差小于行数加一*/
#include<stdio.h>
int main()
{
int n,i,j,temp;//n为层数,i为控制行的循环变量
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("%4d",i);//输出每行的第一个数
j=n;//j为第一位差
temp=i;//temp为第一位数
while(j>=i+1)
{
temp=temp+j;//此处每次循环存储此位数
printf("%4d",temp);//输出
j--;//差减一
}
printf("\n");//每列输出完后输出一个换行符
}
return 0;
}