Я написал такую программу c и ожидаю получить правильные выходы.Почему вывод этой программы C неверен
#include <stdio.h>
#include <stdlib.h>
int main()
{
int t;
scanf("%d", &t);
int a[t-1], b[t-1];
//printf("%d\n",sizeof(a));
do{
scanf("%d %d", &a[t-1], &b[t-1]);
}while(--t);
do{
printf("%d\n",a[t-1] + b[t-1]);
}while(--t);
return 0;
}
Но я получаю случайные значения. Что не так с этой программой? Попытка ввести количество попыток, затем ввести значения, а затем распечатать добавление этих значений.
P.S Инициализация массива здесь динамична. Действительно ли это? Если нет, то какой должен быть правильный путь?
Что вы программируете, и каков ваш ожидаемый результат? –
Что вы подразумеваете под «случайными значениями»? Кроме того, вы изменяете 't' в своем первом цикле while. Как только он достигнет 0, первый цикл остановится. Второй цикл никогда не будет выполняться, потому что 't' равно 0. – Arc676
' int a [t-1], b [t-1]; '->' int a [t], b [t], bk = t; '..' t = bk; do {' – BLUEPIXY