Задать массив длиной 24. Си

 
0
 
C++
ava
marysluva | 31.12.2016, 10:25
1. Задать массив целых чисел длиной 24
2. Предусмотреть в программе ввода элементов массива с клавиатуры, чтение из файла или
заполнения массива псевдослучайными числами.
3. Вывести исходный массив на экран.
4. Осуществить поиск в массиве, используя известные алгоритмы поиска.
5. Выполнить обработку исходного массива в соответствии с вариантом, вывести обработанный массив на экран.
6. Выполнить сортировку элементов массива, используя известные алгоритмы сортировки, вывести обработанный массив на экран. Поменять местами 1-й отрицательный элемент с последним

отрицательным элементом, 2-й - предпоследним и т.д.

Вывести элементы массива на экран.

ПРИМЕЧАНИЕ. Считать ноль положительным числом.

диапазон значений элементов массива (целые величины): -10...25

Есть код на С#. Нужен на Си
c++
Kommentare (1)
ava
solowey | 10.01.2017, 10:32 #
не понятен 5 пункт. А так смотрите...

#include <stdio.h>
#include <cstdlib>
#include <Windows.h>

int arr[24], max = 7;

void Input()
{
    int x;
    for (int i = 0; i < max; i++)
    {
        printf("Введите %d число от -10 до 25 ", i + 1);
        scanf_s("%d", &x);
        arr[i] = x;
    }
}

void Random()
{
    for (int i = 0; i < max; i++)
    {
        arr[i] = rand() % 35 - 10;
    }
}

void ReadFile()
{
    int x;
    FILE *f;
    fopen_s(&f, "C:\\file.txt", "r");
    for (int i = 0; i < max; i++)
    {
        fscanf_s(f, "%d", &x);
        arr[i] = x;
    }
}

void InitArrey()
{
    int vvod;
    while (true)
    {
        printf("Выберите тип ввода: 1 - ручной, 2 - случайный, 3 - из файла. ");
        scanf_s("%d", &vvod);
        if (vvod > 0 && vvod < 4) break;
    }

    switch (vvod)
    {
    case 1:
        Input();
        break;
    case 2:
        Random();
        break;
    case 3:
        ReadFile();
        break;
    default:
        break;
    }
}

void PrintArrey()
{
    for (int i = 0; i < max; i++)
    {
        printf("%d\r\n", arr[i]);
    }
}

void FindArrey()
{
    int x;
    printf("Введите число от -10 до 25 ");
    scanf_s("%d", &x);
    for (int i = 0; i < max; i++)
    {
        if (x == arr[i])
        {
            printf("В массиве число %d найдено.\r\n", x);
            return;
        }
    }
    printf("В массиве число %d не найдено.\r\n", x);
}

void Five()
{
    // дописать
}

void SortArrey()
{
    int temp;
    for (int i = 0; i < static_cast<int>(max / 2); i++)
    {
        temp = arr[i];
        arr[i] = arr[max - i - 1];
        arr[max - i - 1] = temp;
    }
}

int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    InitArrey();

    printf("Массив:\r\n");
    PrintArrey();

    FindArrey();

    Five();
    printf("Массив после обработки:\r\n");
    PrintArrey();

    SortArrey();
    printf("Массив после сортировки:\r\n");
    PrintArrey();

    return 0;
}
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden