打印数字菱形
按行去打印 字符串
当n=2时
i=0 空格4个 数字0 空格4个
i=1 空格2个 数字0 1 空格2个
i=2 空格0个 数字0 1 2 空格0个
i=3 空格2个 数字0 1 空格2个
i=4 空格4个 数字0 空格4个
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
scanf("%d",&n);
char str[1000];
for(int i=0;i<=n;++i){
memset(str,0,1000);
int j;
for( j=0;j<2*n-2*i;++j){
str[j]=' ';
}
for(int k=0;k<=i;++k){
str[j]='0'+k;
str[j+1]=' ';
j=j+2;
}
for(int k=i-1;k>=0;--k){
str[j]='0'+k;
str[j+1]=' ';
j=j+2;
}
printf("%s\n",str);
}
for(int i=n+1;i<=2*n;++i){
int j;
memset(str,0,1000);
for( j=0;j<2*i-2*n;++j){
str[j]=' ';
}
for(int k=0;k<=2*n-i;++k){
str[j]='0'+k;
str[j+1]=' ';
j=j+2;
}
for(int k=2*n-i-1;k>=0;--k){
str[j]='0'+k;
str[j+1]=' ';
j=j+2;
}
printf("%s\n",str);
}
}