这里:
```cpp
for (a = 0; a < n - i; a++)
{
printf(" ");
count++;
}
```
当你三角形枚举到最后一行的时候,```count``` 会少加1。
例:
```
输入;
5
输出:
0102030405
0607080910
1112131415
1617181920
2122232425
01
0203
040506
07080910
1011121314
by One_JuRuo @ 2023-09-14 22:51:23
噢,不是 ```count``` 少加一,是 ```b``` 少加一
by One_JuRuo @ 2023-09-14 22:52:58
@[mzk_c_yy](/user/1055977)
你完全可以这样写:
```cpp
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
void Square(int n)
{
for (int i = 1; i <= n * n; i++)
{
if (i <= 9)
{
printf("%d%d", 0, i);
}
if (i > 9)
{
printf("%d", i);
}
if (i % n == 0)
{
printf("\n");
}
}
}
void Triangle(int n)
{
int a = 0;
int b = 1;
int count = 0;
for (int i = 1; i <= n; i++)
{
for (a = 0; a < n; a++)
{
if(a<n-i) printf(" ");
else if(b<10) printf("%d%d",0,b++);
else printf("%d",b++);
}
puts("");
}
}
int main()
{
int n = 0;
scanf("%d", &n);
Square(n);
printf("\n");
Triangle(n);
return 0;
}
```
by One_JuRuo @ 2023-09-14 22:58:16
@[One_JuRuo](/user/86507) 感谢
by mzk_c_yy @ 2023-09-15 10:43:50
```c
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
int t=1;
for(int i=0;i<n*n;i++)
{
printf("%02d",t);
if((i+1)%n==0)
{
printf("\n");
}
t++;
}
printf("\n");
int c=1;
for(int i=0;i<n;i++)
{
for(int j=0;j<(n-i-1)*2;j++)
{
printf(" ");
}
for(int j=0;j<i+1;j++)
{
printf("%02d",c);
c++;
}
printf("\n");
}
return 0;
}
```
by LUFEE666 @ 2023-09-28 17:42:16
@[One_JuRuo](/user/86507) 请问#define _CRT_SECURE_NO_WARNINGS是什么意思a
by NGM123 @ 2023-09-29 18:49:45
@[NGM123](/user/882629) 我直接复制楼主代码改的,没注意到,我也不清楚。不过,我认为你可以先 [bdfs](https://blog.csdn.net/aa804738534/article/details/115234797)。
by One_JuRuo @ 2023-09-29 20:07:44