Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив: - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив: a[n-1]↔a[0], a[n-2]↔a[1] и т.д. Для работы с массивом использовать функцию. пример программы
Листинг программы
  1. // Обнулить в массиве отрицательные элементы
  2. #define _CRT_SECURE_NO_WARNINGS
  3. #include <stdio.h>
  4. #include <time.h>
  5. #include <stdlib.h>
  6. using namespace std;
  7. void func(int *a, int n)
  8. {
  9. for (int i = 0; i < n; i++)
  10. if (a[i] < 0) a[i] = 0;
  11. }
  12. int main()
  13. {
  14. int *a;
  15. int n;
  16. srand(time(NULL));
  17. printf("n= ");
  18. scanf("%d", &n);
  19. a = (int*)malloc(n*sizeof(int));
  20. for (int i = 0; i<n; i++)
  21. a[i] = rand() % 201 -100; // заполнение массива случайными числами
  22. for (int i = 0; i<n; i++)
  23. printf("%3d ", a[i]);
  24. func(a, n);
  25. printf("\n");
  26. for (int i = 0; i<n; i++)
  27. printf("%3d ", a[i]);
  28. getchar(); getchar();
  29. return 0;
  30. }

Решение задачи: «Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив:»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <stdlib.h>
  4.  
  5. int sort(int *mas,int N)
  6. {
  7.     int temp;
  8.     for(int i = 0; i < N/2; i++)
  9.     {
  10.         temp = mas[N - 1 - i];
  11.         mas[N - 1 - i] = mas[i];
  12.         mas[i] = temp;
  13.     }
  14.     return 0;
  15. }
  16.  
  17. int main()
  18. {
  19.     srand( (unsigned int) time(NULL));
  20.     int *mas, N;
  21.     printf("Number of elements - ");
  22.     scanf("%d",&N);
  23.     mas = (int *)malloc(N*sizeof(int));
  24.    
  25.     for(int i = 0; i < N; i++)
  26.         mas[i] = rand() % 201 - 100;
  27.    
  28.     printf("Before: ");
  29.     for(int i = 0; i < N; i++)
  30.         printf("%d ",mas[i]);
  31.    
  32.     sort(mas,N);
  33.    
  34.     printf("\nAfter: ");
  35.     for(int i = 0; i < N; i++)
  36.         printf("%d ",mas[i]);
  37. }

Объяснение кода листинга программы

  1. #include - подключает файл стандартного ввода/вывода
  2. #include - подключает файл времени
  3. #include - подключает файл стандартных библиотек
  4. *int sort(int mas,int N)** - функция сортировки массива по возрастанию
  5. int main() - функция-точка входа в программу
  6. srand( (unsigned int) time(NULL)); - инициализация генератора случайных чисел
  7. *int mas, N;** - объявление переменных
  8. printf(Number of elements -); - вывод сообщения с просьбой ввести количество элементов
  9. scanf(%d,&N); - ввод количества элементов
  10. mas = (int )malloc(Nsizeof(int)); - выделение памяти под массив
  11. for(int i = 0; i < N; i++) - цикл заполнения массива случайными числами
  12. mas[i] = rand() % 201 - 100; - генерация случайного числа в диапазоне [-100;100]
  13. printf(Before:); - вывод сообщения До
  14. for(int i = 0; i < N; i++) - цикл вывода элементов массива
  15. printf(%d,mas[i]); - вывод элемента массива с пробелом
  16. sort(mas,N); - вызов функции сортировки
  17. printf(\nAfter:); - вывод сообщения После
  18. for(int i = 0; i < N; i++) - цикл вывода элементов массива
  19. printf(%d,mas[i]); - вывод элемента массива с пробелом
  20. return 0; - завершение программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы