#include<stdio.h>
void print_tower(int n,int y)
{
int i=0;//关于行数循环变量
int j=0;//关于空格输出的循环变量
int x=0;//关于字母输出的循环变量
int m=0;//关于行数的循环变量增值
int a=0;
for(i=1;0<i&&i<=n;)//关于行数
{
for(j=1;j<=n-i;j++)//关于空格输出
{
printf(" ");
}
for(a=0,x=1;x<=2*i-1;x++)//关于字母输出
{
switch(y)
{
case 1:
{
if(x>i)//后半部分字母
{
a++;
}
printf("%c",x+64-2*a);
};break;
default:printf("*");
}
}
printf("\n");
//上半部分的循环条件
m++;
if(m<n)
{
i++;
}
//下半部分的循环条件
else
{
i--;
}
}
}
int main()
{
int n=0;
int y=0;
for(int i=1;i==1;)
{
printf("选择字母 1 or '*' 0:");
scanf("%d",&y);
printf("(1<=n<=26)图形深度:n=");
scanf("%d",&n);
void print_tower(int n,int y);
print_tower(n,y);
printf("是否继续:\n继续1\t结束:2?");
scanf("%d",&i);
}
return 0;
}