首页 > 解决方案 > 为什么我不输出除 1 以外的 'a' 值?

问题描述

为什么循环不是以 1 以外的不同值重新开始。

package com.company;

import java.util.Scanner;

public class ForDemo {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.println();
        System.out.print("ENTER A NUMBER: ");
        int b = sc.nextInt();
        int a;
        
        for(a=1 ;a<11;a=a+1)
        for(b=b;b<16;b=b+1)
        System.out.println(b + " * " + a + " = " + b*a);
    }
}

输出:

输入一个数字:1

1 * 1 = 1

2 * 1 = 2

3 * 1 = 3

4 * 1 = 4

5 * 1 = 5

6 * 1 = 6

7 * 1 = 7

8 * 1 = 8

9 * 1 = 9

10 * 1 = 10

11 * 1 = 11

12 * 1 = 12

13 * 1 = 13

14 * 1 = 14 在这里它终止了!

所需输出:

1 * 1 = 1

2 * 1 = 2

3 * 1 = 3

4 * 1 = 4

5 * 1 = 5

6 * 1 = 6

7 * 1 = 7

8 * 1 = 8

9 * 1 = 9

10 * 1 = 10

11 * 1 = 11

12 * 1 = 12

13 * 1 = 13

14 * 1 = 14

15 * 1 = 15

1 * 2 = 2

2 * 2 = 4

3 * 2 = 6

4 * 2 = 8

5 * 2 = 10

6 * 2 = 12

7 * 2 = 14

8 * 2 = 16

9 * 2 = 18

10 * 2 = 20

11 * 2 = 22

12 * 2 = 24

13 * 2 = 26

14 * 2 = 28

15 * 2 = 30 等等....

标签: javafor-loop

解决方案


你正在这样做:b=b. 所以这样做:

for(a=1 ;a<11;a=a+1)
        for(b=1;b<16;b=b+1) // change here!!
        System.out.println(b + " * " + a + " = " + b*a);

推荐阅读