Я пытаюсь назначить ввод пользователя с использованием двумерного массива, который принимает пять чисел и разбивает их на квадраты. Программа должна вычислять и сохранять квадратные значения для каждого пользователя в массиве.C двумерный массив на основе пользовательского ввода
Я получаю правильный вывод с текущим кодом, но я не могу понять, как назначить вход в массив, не получая ошибок в выходе.
#include <stdio.h>
int main(void)
{
int disp[2][5];
int x, y;
printf("Please enter 5 integer values:\n");
for(x=0; x<=2; x++) {
for (y=0; y<=5; y++) {
scanf("%d", &x);
printf("[ %d ][ %d ]\n", x, x*x);
}
}
return 0;
}
Вы используете 'x' в качестве переменной цикла, и как входной переменной. Плохо. Кроме того, когда массив имеет 5 элементов, индексы в массиве составляют 0,1,2,3,4. Таким образом, цикл 'for' должен быть' for (y = 0; y <5; y ++) '. – user3386109
Используйте одну переменную в цикле, а другую - для чтения. Затем просто 'disp [x] [y] = read_variable'; –
Думаю, у вас должно быть три петли. Первый цикл считывает пять чисел от пользователя и сохраняет их в первой строке массива. Второй цикл вычисляет квадрат каждого числа и сохраняет его во второй строке массива. Третий цикл отображает числа и их квадраты. – user3386109