供参考:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i, j, k, n = 4;
char ch = 'A';
//printf("输入n:");
//scanf("%d", &n);
for (k = 1 - n; k <= n - 1; k++)
{
i = n - abs(k);
for (j = 1; j <= n - i; j++)
printf(" ");
for (j = 1; j <= i; j++)
printf("%4c", ch);
printf("\n");
if (k < 0) ch++;
else ch--;
}
return 0;
}
先打印上半个三角形 for(char i = 'A'; i <= 'D'; i++){...}
//第一行距离第一个字母的空格数是行数减1,行数 = ‘D’ - ‘A’,然后空格依次减1
再打印下半个三角形 for(char i = input_data; i >= 'A'; i--){...}
//第二行距离第一个字母的空格为1,根据行数依次加1
for(char i = 'A'; i <= 'D'; i++){
for(int space = 0; space < row - 1; space++){
cout << ' ';
}
for(char j = 'A', int count = 0; count < row; j++, count++){
cout << j << ' ';
}
cout << '\n';
}
//大概吧