Ввод и вывод массива через функцию - C (СИ)
Формулировка задачи:
Здраствуйте, написал программу для ввода/вывода массива с заданным количеством елементов, но не знаю как сделать так, чтобы количество елемментов вводил пользователь, помогите
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- void input(int a[5]){
- int i;
- for( i = 0; i <5; i++)
- scanf("%d", &a[i]);
- }
- void output(int a[5]){
- int i;
- for( i = 0; i <5; i++){
- printf("%d ", a[i]);
- } }
- int main() {
- clrscr();
- int a[5];
- printf("Print 5 elem mass: ");
- input(a);
- printf("Printed mass: ");
- output(a);
- getch();
- return 0;
- }
Решение задачи: «Ввод и вывод массива через функцию»
textual
Листинг программы
- #include <stdlib.h>
- size_t n;
- pritnf("введите размер массива\n");
- scanf("%u", &n);
- int *arr = malloc(n*sizeof(int));
- if (arr == NULL)
- return(-1); // значит память не выделилась
- // теперь можно работать с arr как с массивом длины n, дальше думаю разберётесь, не забудьте в конце программы освободить выделенную память free(arr);
Объяснение кода листинга программы
- Подключаем необходимую библиотеку для работы с размером типа size_t
- Объявляем переменную типа size_t с именем n и инициализируем её значением, равным размеру массива
- Считываем введенное с клавиатуры значение размера массива в переменную n
- Выделяем память под массив переменной длины n с помощью функции malloc
- Проверяем успешность выделения памяти. Если память не выделилась, то возвращаем -1
- Теперь можно использовать выделенный массив как полноценный массив длины n
- Забываем освободить выделенную память
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д