【发布时间】:2021-01-31 17:53:12
【问题描述】:
我已经挣扎了几个小时,仍然无法弄清楚这个问题。 以下是我从网上找到的答案:
int main(){
int ch=65;
int i,j,k,m;
system("cls");
for(i=1;i<=5;i++)
{
for(j=5;j>=i;j--)
printf(" ");
for(k=1;k<=i;k++)
printf("%c",ch++);
ch--;
for(m=1;m<i;m++)
printf("%c",--ch);
printf("\n");
ch=65;
}
return 0;
}
下面是我尝试做同样事情的代码:
int main(void){
char ch;
int i, j, k, m;
printf("Please Enter a capital character: ");
while(scanf("%c", &ch) == 1){
for (i = 0; i < (ch - 'A' + 1); i++)
{
for (j = (ch - 'A' + 1); j > i; j--)
printf(" ");
for (k = 'A'; k < ch; ++k)
printf("%c", ch);
for (m = ch; m > 'A'; m--)
printf("%c", m);
printf("\n");
}
printf("Try another one(q to quit): ");
}
return 0;
}
我想让程序更具交互性,但答案很奇怪,我应该修改什么才能使其正常工作? 编写同样的程序有什么更好的主意吗?
答案应该是:
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
我的代码:
CCCB
CCCB
CCCB
谢谢!
【问题讨论】: