Удалить нечетные элементы из массива сдвигом влево - C (СИ)

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

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

Сформировать массив из 50 случайных чисел, попадающих в заданный промежуток А. . В. Напечатать сформирован массив. Затем удалить из него все нечетные элементы. Напечатать массив после сокращения. Подсказка: для извлечения сдвигать все последующие элементы массива влево. Помогите исправить и дописать код Заранее спасибо!
#include      
#include  // Для використання "rand()"
#include  // для використання 'srand (time (0))'
int main()
{
    const int n = 50;
    int i;
    int a[n];
    srand(time(0));
    for(i = 0; i < n; i++) {
        a[i]=rand()%50;
        printf("%d\n", a[i]);
        if(a[i] % 2 != 0){
            printf("%d << 1 == %d\n",a[i], a[i] << 1);
        }
    } 
 
    return 0;
}

Решение задачи: «Удалить нечетные элементы из массива сдвигом влево»

textual
Листинг программы
#include <stdio.h>     
#include <stdlib.h> // Для використання "rand()"
#include <time.h> // для використання 'srand (time (0))'
int main()
{
    const int n = 50;
    int i;
    int a[n];
    srand(time(0));
    for(i = 0; i < n; i++) {
        a[i]=rand()%50;
        printf("%d\n", a[i]);
    }   
    printf("New\n");
    for(i = 0; i < n; i++) {
        if(a[i] % 2 != 0){
            a[i]=a[i] << 1;
            printf("%d\n", a[i]);
        }
    }       
    return 0;
}

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

В этом коде выполняются следующие действия:

  1. Включаются необходимые заголовочные файлы:
    • stdio.h используется для работы с функциями ввода-вывода;
    • stdlib.h используется для работы со случайными числами;
    • time.h используется для получения текущего времени, которое используется как семя для генерации случайных чисел.
  2. Определяется константа n, которая задает размер массива.
  3. Задается начальное значение i перед циклом.
  4. Создается массив a с помощью оператора int a[n];.
  5. Запускается генератор случайных чисел с помощью функции srand(time(0)).
  6. Цикл заполняет массив a случайными нечетными числами с помощью цикла for и функции rand()%50. Каждое сгенерированное число выводится на экран с помощью функции printf().
  7. Выводится сообщение New с помощью функции printf(New\n);.
  8. Цикл проходит по массиву a с помощью цикла for и проверяет, является ли элемент массива нечетным с помощью оператора %. Если это так, то элемент сдвигается влево на 1 с помощью оператора << и выводится на экран с помощью функции printf().
  9. Возвращается 0, чтобы указать, что программа успешно завершилась.

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


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

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

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