标题:C PRIMER PLUS 练习中的不解
取消只看楼主
寻乐的狼
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2007-2-16
结帖率:100%
 问题点数:0 回复次数:2 
C PRIMER PLUS 练习中的不解
要求输出如下
    A
   ABA
  ABCBA
 ABCDCBA
ABCDEDCBA
我的代码错在哪了呢
#include <stdio.h>
#include <stdlib.h>
#define  ROWS 5
int main()
{
   int x,y;
   int i=0;
   char A='A';
   for(y=4;y>=0;y--)
   {
                      for(x=0;x<2*ROWS-1;x++)
                      {
                                             if(y<=x||y<2*ROWS-x-1)//处理两边的空格
                                             printf(" ");
                                             else if(y<ROWS)
                                                  {
                                                  printf("%c",A+i);
                                                  i++;
                                                  }
                                                  else
                                                  {
                                                       printf("%c",A+i);
                                                       i--;
                                                  }
                                             printf("\n");
                      }
   }
   system("pause");
   return 0;
}

[[it] 本帖最后由 寻乐的狼 于 2008-2-8 13:31 编辑 [/it]]
搜索更多相关主题的帖子: PRIMER PLUS 练习 int include 
2008-02-08 13:08
寻乐的狼
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2007-2-16
得分:0 
[bo]以下是引用 [un]死了都要C[/un] 在 2008-2-9 18:41 的发言:[/bo]

经过调试``发现输出了36了空格和回车`

为什么呢? 2*ROWS-1 = 9 加 for(y=4;y>=0;y--)
所以就是36``

if(y

谢谢你的回复,很实际。确实是这样的。我改成了if(y>x||y<2*ROWS-x-1),可还是不对。从输出看是printf("\n");的问题,可是我看代码觉得没问题。它应该不是在IF判断语句中。不知为什么

用C打破禁锢的世界
2008-02-09 21:04
寻乐的狼
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2007-2-16
得分:0 
[bo]以下是引用 [un]nobush[/un] 在 2008-2-10 16:33 的发言:[/bo]

問題多著呢——
printf("\n")控制行尾,應該在第一重循環
你這一句 else if(y

晕,是的。应改为Y〈X

用C打破禁锢的世界
2008-02-12 14:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-199619-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.232059 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved