Найти индексы одинаковых элементов массива и вывести их в порядке возрастания - C (СИ)

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

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

Дано целочисленный массив размера N, содержащий ровно два одинаковых элемента. Найти номера одинаковых элементов и вывести эти номера в порядке возрастания.

Решение задачи: «Найти индексы одинаковых элементов массива и вывести их в порядке возрастания»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{   
    int i, j, N;
    printf("Enter the size of the array: \n");
    scanf("%d", &N);
    int *a = malloc(N * sizeof(int));
    printf("Enter the elements of the array: \n");
    for (i = 0; i < N; i++) {
        scanf("%d", &a[i]);
    }
    printf("\nThe entered array: \n");
    for (i = 0; i < N; i++) {
        printf("%3d ", a[i]);
    }
    printf("\n");
    for (i = 0; i < N; i++) {
        for (j = 0; j < N; j++) {
            if (j != i && a[i] == a[j] && i<j) 
                printf("\n%d %d\n\n", i, j);
        }
    }
    system("pause");
    return 0;
}

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

В этом коде:

  1. Объявлены переменные i, j, N (1, 2, 3).
  2. Пользователю предлагается ввести размер массива (4).
  3. Выделена память под массив (5).
  4. Пользователю предлагается ввести элементы массива (6).
  5. Выведен введённый массив (7).
  6. В цикле 2 вложенных цикла выводятся индексы одинаковых элементов в порядке возрастания (8).
  7. В конце программы пользователю предлагается нажать любую клавишу (9).
  8. Программа завершается (10).

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


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

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

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