Я пытаюсь ввести вход в массив через scanf()
. 1-й и 2-й звонки scanf()
, похоже, работают так, как я ожидаю. Остальные два не работают, и я не могу понять, почему. Может ли кто-нибудь указать на проблему?3rd и 4th scanf не принимает вход
Вот мой код:
#include <stdio.h>
#define SIZE_A (10)
#define SIZE_B (10)
#define SIZE_C (SIZE_A+SIZE_B)
int main()
{
int A[SIZE_A] = {0}, B[SIZE_B] = {0};
int A_input = 0, B_input = 0;
printf("First series length:\n");
scanf("%d", &A_input);
printf("Enter %d numbers for first series:\n", A_input);
scanf("%d %d %d %d %d %d %d %d %d %d", &A[0], &A[1], &A[2], &A[3], &A[4],
&A[5], &A[6], &A[7], &A[8], &A[9]);
{
printf("Second series length:\n");
scanf("%d",&B_input); /* problem here */
printf("Enter %d numbers for second series:\n", B_input);
scanf("%d %d %d %d %d %d %d %d %d %d", &B[0], &B[1], &B[2], &B[3], &B[4],
&B[5], &B[6], &B[7], &B[8], &B[9]); /* problem here */
}
return 0;
}
Эээ ... почему вы просили длины серии, а затем полностью игнорировали их? Вы не можете отменить любые неиспользуемые поля ввода, первая запись серии не будет удовлетворена, пока вы не введете 10 значений. Бесполезно нажимать 'enter' после 5 записей и думать, что код перейдет ко второй серии. 'enter' - это просто пробел, как' space' и т. д. –
вначале, я думал, что буду использовать их для определения размера массива, потому что я видел, что он должен быть const больным использовать его позже для остальной части кода – lior
Просьба описать поведение вашей программы более конкретно, чем «она не делает», т работы ". В частности, каков был конкретный вклад и каково наблюдаемое поведение вашей программы для этих ресурсов? – kaylum