Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2022, 15:02   #1
ok.ko19
Пользователь
 
Регистрация: 15.10.2021
Сообщений: 19
По умолчанию не работает сортировка (Си)

Отсортировать цены на компьютерную технику методом «пузырька» в порядке возрастания.
Код:
#define _CRT_SECURE_NO_WARNINGS
#include <Windows.h>
#include <stdio.h>
#include <math.h>
 
#define N 5 
#define M 15
#define PRI(X) 3*(X)*(X)+4*(X)-2 
 
typedef struct Ctechnology 
{
    char firma[M];
    char type[M];
    int price[N];
} comp;
 
void Sort(int* mas);
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    comp a;
 
    printf("Введите фирму-производителя, тип компьютерной техники, цену буде рассчитано - (y=3x^2+4x-2)\n ");
    for (int i = 0; i < N; i++)
    {
        a.price[i] = PRI(((i + 1)+N));
        printf("%d) ", i + 1);
        scanf("%s %s", a.firma, a.type);
        printf("\n                              | [%d] | Фирма %10s | Тип %10s | Цена %10d |\n", i + 1, a.firma, a.type, a.price[i]);
    }
    Sort(a.price);
    return 0;
}
 
void Sort(int* mas)
{
    // сортировка массива пузырьком 
    int swap;
    for (int i = N-1; i >=0; i--)
    {
        for (int j = 0; j < i; j++) {
            if (mas[j] > mas[j + 1]) {
                swap = mas[j];
                mas[j] = mas[j + 1];
                mas[j + 1] = swap;
            }
        }
    }
}
ok.ko19 вне форума Ответить с цитированием
Старый 01.04.2022, 18:28   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,550
По умолчанию

Почему не работает - ясно: подпрограмма Sort работает с целочисленным массивом, а не с массивом структур, который (а) , кстати, должен быть объявлен как массив структур, а не как одиночная структура.
https://pimiento.github.io/c_structures.html

Последний раз редактировалось digitalis; 01.04.2022 в 18:35.
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка вставками (не работает) Asaevd Помощь студентам 1 07.06.2017 10:36
Не работает сортировка Алексей_2012 Общие вопросы Delphi 13 05.05.2013 16:13
Сортировка не работает CWD Общие вопросы C/C++ 6 21.09.2011 23:35
Не работает сортировка Serzhi1 Общие вопросы C/C++ 16 25.12.2008 07:22
Плохо работает сортировка Lady_olga БД в Delphi 11 04.06.2008 23:10