打印-杨辉三角
2014-11-06 19:35
246 查看
#include<stdio.h>
void print(int n);
int main(){
int n =getchar()-'0';
print(n);
return0;
}
void print(int n){
int a[100] = {1,1};
int b[100];
int i =0;
int j =0;
if (n ==1) {
printf("1\n");}
elseif(n==2){
printf("1\n");
printf("1 1\n");
}
else{
printf("1\n");
printf("1 1\n");
for(j =3;j<=n;j++){
if(j%2==0){
for(i =1;i<j-1;i++){
a[i] = b[i-1]+b[i];
a[0] =1;
a[j-1] =1;
}
//打印:a[]
for (i =0; i<j; i++) {
printf("%d ",a[i]);
}
putchar('\n');
}
else{
for(i =1;i<j-1;i++){
b[i] = a[i-1]+a[i];
b[0] =1;
b[j-1] =1;
}
//打印:b[]
for (i =0; i<j; i++) {
printf("%d ",b[i]);
}
putchar('\n');
}
}
}
}
void print(int n);
int main(){
int n =getchar()-'0';
print(n);
return0;
}
void print(int n){
int a[100] = {1,1};
int b[100];
int i =0;
int j =0;
if (n ==1) {
printf("1\n");}
elseif(n==2){
printf("1\n");
printf("1 1\n");
}
else{
printf("1\n");
printf("1 1\n");
for(j =3;j<=n;j++){
if(j%2==0){
for(i =1;i<j-1;i++){
a[i] = b[i-1]+b[i];
a[0] =1;
a[j-1] =1;
}
//打印:a[]
for (i =0; i<j; i++) {
printf("%d ",a[i]);
}
putchar('\n');
}
else{
for(i =1;i<j-1;i++){
b[i] = a[i-1]+a[i];
b[0] =1;
b[j-1] =1;
}
//打印:b[]
for (i =0; i<j; i++) {
printf("%d ",b[i]);
}
putchar('\n');
}
}
}
}