Для больших массивов я бы предпочел использовать стандартный ввод, так как обычно существует ограничение операционной системы на количество аргументов, которые вы можете иметь.
Вам также понадобится какой-то формат ввода. Допустим, первое число n
- это количество элементов в первом массиве, за которыми следуют значения элементов и так далее. Тогда я бы сделал что-то вроде:
#include <stdlib.h>
#include <stdio.h>
int main()
{
// you need to implement read_number yourself
int n = read_number(stdin);
// allocate array
int *array = (int*) malloc(n*sizeof(int));
// read n numbers into array
for ( int i=0; i < n; ++i )
array[i] = read_number(stdin);
// and so on...
}
Вы получите общее представление. Вы должны либо сами внедрить read_number
, либо найти в сети примеры того, как это сделать. Вам нужно будет как-то различать отдельные номера, например, анализируя каждую цифру до следующего пробела. Затем вы можете разделить каждую цифру в stdin пробелами.
Например, вы можете использовать предложенное @ypnos решение scanf ниже.