Поменять местами максимальный и последний отрицательный элементы массива А (40) - C (СИ)

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

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

1. Поменять местами максимальный и последний отрицательный элементы массива А (40).

Решение задачи: «Поменять местами максимальный и последний отрицательный элементы массива А (40)»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define N 40
int max_elem_idx(int *arr, int sz); 
void input_array (int *A, int A_size);
void print_array (int *A, int A_size);
 
int main ()
{
    int i;
    int A[N];
    srand(time(0));
    input_array(A, N);
    puts("\nbefore");
    print_array(A, N);
    for(i=N-1; i!=0;--i)
        if(A[i]<0){
            int tmp=A[i];
            A[i]=A[max_elem_idx(A, N)];
            A[max_elem_idx(A, N)]=tmp;
            break;
            }
    puts("\nafter:");
    print_array(A, N);
    return 0;
}
int max_elem_idx(int *arr, int sz){
    int i=0;
    int idx=i;
    for(i=1; i<sz;++i){
        if (arr[idx]<arr[i])
            idx=i;
    }
    return idx;
}
    
 
void input_array (int *A, int A_size)
{
    int i;
    int a=-100;
    int b=100;
    for(i=0; i<A_size; i++)
    {
        A[i]=a+rand()%(b-a+1);
    }
}
 
void print_array(int *A, int A_size)
{
    for(int i=0; i<A_size; i++)
    {
        printf("%4d", A[i]);
        //printf("\n");
    }
    puts("");
}

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

  1. Включаем необходимые заголовочные файлы для работы с I/O и обеспечения рандомизации инициализации массива
  2. Определяем размер массива N
  3. Объявляем функцию max_elem_idx, которая находит индекс максимального элемента в массиве
  4. Объявляем функцию input_array, которая заполняет массив случайными числами
  5. Объявляем функцию print_array, которая выводит массив на экран
  6. В функции main генерируем случайные значения для массива, выводим его на экран
  7. Меняем местами максимальный и последний отрицательный элементы массива
  8. Выводим измененный массив на экран
  9. Возвращаем 0, чтобы указать, что программа успешно завершилась

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


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

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

6   голосов , оценка 4.167 из 5
Похожие ответы