Дан массив размерности 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; - завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д