Создать массив из 1 000 000 000 и более элементов, а потом заполнить и вывести его - C (СИ)
Формулировка задачи:
создаю массив, и все идет нормально
затем заполняю его и вывожу
и до 100 000 000 все также работает нормально, но для числа побольше, например 1 000 000 000
после a[i] = rand()%20; возникает необработанное исключение
а если убрать заполнение, то с printf("%llu ", a[i]); та же история.
Что я делаю не так?
Как создать массив из 1 000 000 000 и более элементов , а потом заполнить и вывести его?
Буду очень благодарен любым вашим ответам.
Листинг программы
- #include <stdio.h>
- #include <malloc.h>
- #include <stdlib.h>
Листинг программы
- int main(void)
- {
- unsigned long long n;
- unsigned long long *a;
- scanf_s("%llu", &n);
- unsigned long long e=n;
- a = (unsigned long long*)malloc(n*sizeof(unsigned long long) );
- return 0;
- }
Листинг программы
- for (unsigned long long i = 0; i < n; i++)
- {
- a[i] = rand()%20;
- }
- for (unsigned long long i = 0; i < n; i++)
- {
- printf("%llu ", a[i]);
- }
Решение задачи: «Создать массив из 1 000 000 000 и более элементов, а потом заполнить и вывести его»
textual
Листинг программы
- for (unsigned long long i = 0; i < n; i++)
- {
- a[i] = rand()%20;
- }
- for (unsigned long long i = 0; i < n; i++)
- {
- printf("%llu ", a[i]);
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д