1. 蛇形矩阵
输入文件名“snake.txt”
输出文件名“estdout.pc2”
蛇形矩阵是由1开始的自然数依次排成的一个矩阵上的三角形。
输入格式
输入文件由一行和多行构成,每行由一个正整数N组成,(N不大于100)。输入文件的最后一行是‘#’表示文件结束。
输出格式
对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要有额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。
输入样本
5
#
输出样本
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
水题................
#include <iostream>
using namespace std;
char c[4];
int n;
void work (void){
int i,j,a1=1,b1=2,q=1,s1,s2;
for (i=n;i>=1;i--){
s1=q;
s2=b1;
for (j=1;j<=i;j++){
cout<<q<<" ";
q+=b1++;
}
cout<<endl;
q=s1;
q+=a1++;
b1=s2+1;
}
return;
}
void init (void){
cin>>c;
int x,i=1;
while (c[0]!='#'){
n=0;
x=strlen (c)-1;
for (;x>=0;x--,i*=10)
n+=(c[x]-'0')*i;
work ();
cin>>c;
}
return;
}
int main (void){
freopen ("snake.txt","r",stdin);
freopen ("estdout.pc2","w",stdout);
init ();
}