1.解法一(基础版)
int main(){
char ch;
scanf("%c",&ch);
printf(" %c \n",ch);
printf(" %c%c%c \n",ch,ch,ch);
printf("%c%c%c%c%c\n",ch,ch,ch,ch,ch);
printf(" %c%c%c \n",ch,ch,ch);
printf(" %c \n",ch);
return 0;
}
2.解法二(通用版)
#include<stdio.h>
int main()
{
int i = 0;
int j = 0;
char c = 0;
scanf("%c", &c);
int n = 3;//第一行到对角线行的行数
for(i = 1; i <= n; i++)
{
//打印每行对应空格
for(j = 0; j < n - i; j++)
{
printf(" ");
}
//打印每行对应字符
for(j = 0; j < 2 * i - 1; j++)
{
printf("%c",c);
}
printf("\n");
}
//打印对角线行以下行
for(i = 1; i < n; i++)
{
//打印每行对应空格
for(j = 0; j < i; j++)
{
printf(" ");
}
//打印每行对应字符
for(j = 0; j < 2 * (n - i) - 1; j++)
{
printf("%c",c);
}
printf("\n");
}
return 0;
}



京公网安备 11010502036488号