Q:

Создание массива из чисел, делящихся на К

int k = 10;
int n = 4;
int a[] = new int[n];
for (int i = 20; i < a.length; i++) {
    for (i = 10; i < 100; i++) {
        if (a[i] % k == 0)
            System.out.println(a[i]);
}

Нужно создать массив, состоящий из элементов, которые делятся на число K. Допустим, K равно 10. 
Как это сделать? Надо ли "открыть" цикл тут или нет, чтобы код заработал?

A:

Для получения чисел, кратных k, достаточно перемножить k на числа от 1 до n (включительно) и сохранить результаты умножения в массив:
int k = 10;
int n = 4;
int[] result = new int[n];
for (int i = 1; i <= n; i++)
    result[i - 1] = k * i;

Или с использованием IntStream:
int k = 10;
int n = 4;
int[] result = IntStream.range(1, n + 1).map(e -> e * k).toArray();

Если результирующие числа должны начинаться с определённого числа minNumber (например, со 100, то есть с трёхзначного), то можно заранее посчитать значение первого элемента (firstNumber):
int k = 10;
int n = 4;
int minNumber = 100;
int firstNumber = minNumber % k == 0 ? minNumber : minNumber + k - minNumber % k;
int[] result = new int[n];
for (int i = 0; i < n; i++)
    result[i] = firstNumber + k * i;

