%取余运算的大作用---实现单行内的循环_JAVA

 

 

 看这个数表,它的第一行是 0 开头递增,一直到 25。第二行是 1 开头,一直到25,然后循环输出0。

第 i 行就从 i 这个数开始,每一行都控制输出了26个数。

int main()

{

  const int n = 26;             //定义一个整型常量

  for (int i = 0; i < n; i++)   //控制行数,总共输出了26行

  {

    int k = i;                  //把 i 的值给了 k

    for (int j = 0; j < n; j++)  //控制列数,总共输出了26列

    {

      printf("%4d", k);     // 打印 k

      k++;

      if (k > 25)             //当一行中 k 大于25了,

      k %= 26;              //就用取余让它循环起来,取余得到的数给了 k

      //然后这上面这三行优化成

      //k = (k + 1)%n;

        }
  printf("\n");
  }

 return 0;
}

 

-------->然后我改一下

int main()

{

  const int n = 26;

  char ch[] = { "ABCDEFGHIJKLMNOPQRSTUVWXYZ" }; //就加了这一行

  for (int i = 0; i < n; i++)

  {
  
  int k = i;

    for (int j = 0; j < n; j++)

    {

    printf("%c",ch[k]);      //改了打印对象

    k = (k + 1)%n;

    }

  printf("\n");

  }

  return 0;

}

 

3

2

1

bang!

%取余运算的大作用---实现单行内的循环_i++_02