C 语言编程,高手进,指点一下菜鸟

来源:百度知道 编辑:UC知道 时间:2024/06/28 13:35:46
编程输出下面图形,其行数n(<=26)由输入而定。
A
ABA
ABCBA
ABCDCBA
... ...

我写的程序是
main()
{ int i,j,k;
int n;
char c;
c='A';
printf("Please input n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{ for(j=1;j<=(n-i);j++)
printf("");
for(k=(n-i+1);k<n;k++)
printf("%c",c++ );
for(k=n;k<(n+i);k++)
printf("%c",c--);
if(k=n+i)
printf("\n");
}
}

可是运行的结果是( N=3)
A
@A@
?@a@?
各位,指点迷津拉,我错在哪里了阿?
希望您也能再写一个程序,我的程序太乱了,太滥了...
上面那个图形是字母塔的,是中心轴对称图形,电脑上我输不出来。

//2个错误,一个是空格是" ",二是c每行开始都要重新='A'
main()
{ int i,j,k;
int n;
char c;
c='A';
printf("Please input n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{ for(j=1;j<=(n-i);j++)
printf(" ");
c='A';
for(k=(n-i+1);k<n;k++)
printf("%c",c++);
for(k=n;k<(n+i);k++)
printf("%c",c--);
if(k=n+i)
printf("\n");
}
}

在第一个for里面插入
c='A';
即:
for(i=1;i<=n;i++)
{
c='A';
for(j=1;j<=(n-i);j++)
…………