用C在新行中打印相同的星号图案n次

用C在新行中打印相同的星号图案n次,c,C,我有以下代码: #include <stdio.h> int main() { int n, i, c; printf("Size"); scanf("%d", &n); for (i = 1; i <= (n + 1); i++) { printf("*"); printf(" "); } printf("\n"); for (int a = 1; a <= (

我有以下代码:

#include <stdio.h>

int main()
{
    int n, i, c;

    printf("Size");
    scanf("%d", &n);

    for (i = 1; i <= (n + 1); i++)
    {
        printf("*");
        printf(" ");
    }
    printf("\n");
    for (int a = 1; a <= (((n + 1) * 2)-1); a++)
    {
        printf("*");
    }
    printf("\n");
}
如您所见,它将执行计算并打印带空格的行,在接下来的行中,它将再次执行计算,但将打印n次不带空格的行。我无法找到如何每次都以新行打印它们。

缺少一个循环:

#include <stdio.h>

int main()
{
    int n, i, c;

    printf("Size");
    scanf("%d", &n);

    for (i = 1; i <= (n + 1); i++)
    {
        printf("*");
        printf(" ");
    }
    printf("\n");

    size_t width = (((n + 1) * 2)-1);
    for (int j = 0; j < n; j++) { /* loop for lines */
        for (int a = 1; a <= width; a++) /* loop * in lines */
        {
            printf("*");
        }
        printf("\n");
    }
}
#包括
int main()
{
int n,i,c;
printf(“尺寸”);
scanf(“%d”和“&n”);
对于(i=1;i添加另一个for循环

for(j= 0; j< n;++j)/*do this inner for loop and scope code n times*/
{
  for ( a = 1; a <= (((n + 1) * 2)-1); a++)
  {
    printf("*");
  }
  printf("\n");
}
for(j=0;jfor(j= 0; j< n;++j)/*do this inner for loop and scope code n times*/
{
  for ( a = 1; a <= (((n + 1) * 2)-1); a++)
  {
    printf("*");
  }
  printf("\n");
}