C - 尝试在循环中比上一行多添加一个空格

标签 c for-loop

我想在每行的开头添加一个额外的空格。当前输出是:

$****
 $***
  $**
   $*
    $
     Press any key to continue . . .

我想要的是:

$****
 $***
  $**
   $*
    $
Press any key to continue . . .

我添加了for循环!它看起来几乎完美,除了“按任意键继续...”消息被标记。如何解决?

代码:

for(r=1; r<=5; r++) {
  printf("$");
  for(c=1; c<=5;c++) {
    if(6-r<=c) {
      printf(" ");
    } else {
      printf("*");
    }
  }
  printf("\n");
  n++;
  for (f=0;n>f;f++)
    {
        printf(" ");
    }
}

最佳答案

好吧,您的问题本身就有了答案,“如何说 printf(""); 'n' 次”说 printf 'n' 次的最简单方法是运行它 'n' 次,就像您要求程序打印“*”(6-r) 次!

好吧,这是一个非常简单的代码,可以帮助您获得想要的输出

#include<stdio.h>
void main()
{
    int r,c,n=0;

    for(r=1; r<=5; r++)
    {
        for(c=n;c>0;c--)
        {
            printf(" ");

        }
        printf("$");
        for(c=1; c<=5;c++)
        {
            if((6-r)<=c)
            {
                printf(" ");
            }
            else
            {
                printf("*");
            }
        }

        printf("\n");
        n++;

    }
}

如果您想查看代码,请转至 Codepad.org here you can run your code and see the output

关于C - 尝试在循环中比上一行多添加一个空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13041877/

相关文章:

c++ - char* 和 char** 的问题 (C --> C++)

c - 是否还有更多优化此代码的余地?

c++ - 迭代器如何映射/知道它们的当前位置或元素

javascript - 使用索引遍历 JavaScript 对象

python - 通过列表迭代函数

java - 即使没有必要,if 子句是否也会遍历其所有语句?

c - 通过 Verilog VPI 将 256 位连线传递给 C 函数

c - 程序不适用于 C 中的大文件

javascript - 循环数组中的值

c++ - 循环中的函数,参数不变