Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив: - C (СИ)
Формулировка задачи:
Дан массив размерности n. Заполнить массив случайными числами в диапазоне
[-100;100]. Перевернуть массив: a[n-1]↔a[0], a[n-2]↔a[1] и т.д. Для работы с массивом использовать функцию.
пример программы
Листинг программы
- // Обнулить в массиве отрицательные элементы
- #define _CRT_SECURE_NO_WARNINGS
- #include <stdio.h>
- #include <time.h>
- #include <stdlib.h>
- using namespace std;
- void func(int *a, int n)
- {
- for (int i = 0; i < n; i++)
- if (a[i] < 0) a[i] = 0;
- }
- int main()
- {
- int *a;
- int n;
- srand(time(NULL));
- printf("n= ");
- scanf("%d", &n);
- a = (int*)malloc(n*sizeof(int));
- for (int i = 0; i<n; i++)
- a[i] = rand() % 201 -100; // заполнение массива случайными числами
- for (int i = 0; i<n; i++)
- printf("%3d ", a[i]);
- func(a, n);
- printf("\n");
- for (int i = 0; i<n; i++)
- printf("%3d ", a[i]);
- getchar(); getchar();
- return 0;
- }
Решение задачи: «Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив:»
textual
Листинг программы
- #include <stdio.h>
- #include <time.h>
- #include <stdlib.h>
- int sort(int *mas,int N)
- {
- int temp;
- for(int i = 0; i < N/2; i++)
- {
- temp = mas[N - 1 - i];
- mas[N - 1 - i] = mas[i];
- mas[i] = temp;
- }
- return 0;
- }
- int main()
- {
- srand( (unsigned int) time(NULL));
- int *mas, N;
- printf("Number of elements - ");
- scanf("%d",&N);
- mas = (int *)malloc(N*sizeof(int));
- for(int i = 0; i < N; i++)
- mas[i] = rand() % 201 - 100;
- printf("Before: ");
- for(int i = 0; i < N; i++)
- printf("%d ",mas[i]);
- sort(mas,N);
- printf("\nAfter: ");
- for(int i = 0; i < N; i++)
- printf("%d ",mas[i]);
- }
Объяснение кода листинга программы
- #include
- подключает файл стандартного ввода/вывода - #include
- подключает файл времени - #include
- подключает файл стандартных библиотек - *int sort(int mas,int N)** - функция сортировки массива по возрастанию
- int main() - функция-точка входа в программу
- srand( (unsigned int) time(NULL)); - инициализация генератора случайных чисел
- *int mas, N;** - объявление переменных
- printf(
Number of elements -
); - вывод сообщения с просьбой ввести количество элементов - scanf(
%d
,&N); - ввод количества элементов - mas = (int )malloc(Nsizeof(int)); - выделение памяти под массив
- for(int i = 0; i < N; i++) - цикл заполнения массива случайными числами
- mas[i] = rand() % 201 - 100; - генерация случайного числа в диапазоне [-100;100]
- printf(
Before:
); - вывод сообщенияДо
- for(int i = 0; i < N; i++) - цикл вывода элементов массива
- printf(
%d
,mas[i]); - вывод элемента массива с пробелом - sort(mas,N); - вызов функции сортировки
- printf(
\nAfter:
); - вывод сообщенияПосле
- for(int i = 0; i < N; i++) - цикл вывода элементов массива
- printf(
%d
,mas[i]); - вывод элемента массива с пробелом - return 0; - завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д