不用这么复杂,直接用几个数组重复输出就行,你这个反而容易出问题
```cpp
#include<iostream>
using namespace std;
int main(){
int n,m=1,l,k=1;
cin>>n;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(m<=9) cout<<0;
cout<<m;
m++;
}
cout<<endl;
}
cout<<endl;
m=1;
l=(n*2)-2;
for(int i=0;i<n;i++){
for(int j=0;j<l;j++) cout<<" ";
for(int j=1;j<=k;j++){
if(m<=9) cout<<0;
cout<<m;
m++;
}
cout<<endl;
l-=2;
k++;
}
return 0;
}
```
看看吧,能AC
by manyc @ 2023-03-26 19:17:40