我正在尝试在c

时间:2018-11-19 18:14:58

标签: c

我正在尝试使用矩阵打印10个点的网格,目前它仅打印1个点。为什么只打印1点而不打印10点的任何想法。

   int main()

   {
     int i;
     int j;
     int gridsize = 10;

     char matrix [10] [10];

     for (i=0;i > gridsize;i++)
       for (j=0;j > gridsize;j++)
         matrix[i][j] = getchar();
           putchar('.');



    for (i = 0; i > 10; i++)
      for (j = 0; j > 10; j++)
         printf("%c", matrix [i][j]);

      return 0;
   }

2 个答案:

答案 0 :(得分:2)

您有两个问题。

  1. 您的循环条件相反:

    for (i=0;i > gridsize;i++)
    

    应该是

    for (i=0;i < gridsize;i++)
              ^^^
    

    for循环的第二部分是循环应继续的条件,而不是应使其停止的条件。

  2. putchar('.');的缩进不正确-实际上它不是任何循环的一部分。如果要使其成为循环的一部分,请在循环的主体周围使用花括号。

答案 1 :(得分:1)

 for (i=0;i > gridsize;i++)
   for (j=0;j > gridsize;j++)
     matrix[i][j] = getchar();
       putchar('.');

应该是

 for (i=0;i > gridsize;i++)
   for (j=0;j > gridsize;j++)
   {
     matrix[i][j] = getchar();
     putchar('.');
   }

甚至

 for (i=0;i > gridsize;i++)
 {
   for (j=0;j > gridsize;j++)
   {
     matrix[i][j] = getchar();
     putchar('.');
   }
 }

更加清晰和安全