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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2014, 12:22   #1
samsandr
 
Регистрация: 26.11.2013
Сообщений: 8
По умолчанию Удаление ненужных элементов массива

Подскажите, что сделать, а то не получается. Задание: Составить список заказчиков, которые заказали наибольшее число товаров каждого типа. При правильной работе(например 2 элемента): имя-Денис, заказ-тв, 4шт. имя-Андрей. заказ тв-7штук. РЕЗУЛЬТАТ- андрей 7 тв. Не знаю,что надо изменить/добавить.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct source {
    int voltage,
    amperage ,
    frequency;
};
struct customer {
    char title[10],
    address[10];
};

struct order {
    struct customer characteristics_cust;
    char device[10];
    int number;
};

int main()
{
    int n, i, j;
    printf("Enter a number of customers ");
    scanf("%d", &n);
    struct order sum[n];
    for(i = 0; i < n; i++) {
        printf("\nEnter a name of a customer ");
        scanf("%s", sum[i].characteristics_cust.title );
        printf("Enter a name of a device ");
        scanf("%s", sum[i].device );
        printf("Enter a number of bought devices ");
        scanf("%d", &sum[i].number );
    }
    char *check_device;
    int check_number=0, k;
    printf("\nList of customers with the biggest orders of every device:\n");
    for(i = 0 ; i < n; i++) {
        check_device=sum[i].device;
        check_number=sum[i].number;
        for(j = 0 ; j < n; j++) {
            if(!strcmp(check_device, sum[j].device)) {
                if(check_number>sum[j].number) {
                 check_device=check_device;
                 check_number=check_number;
                 
              }
              else if(check_number<sum[j].number) {
                check_device=sum[j].device;
                check_number=sum[j].number;             
              }
            }
            else {
                check_device=check_device;
                check_number=sum[j].number;
            }

        }
        
        printf(" %s: %d %s", sum[i].characteristics_cust.title, check_number, check_device);
    }

    return 0;
}
samsandr вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление ненужных слов djmaluy Microsoft Office Excel 10 18.11.2015 14:32
Удаление ненужных строк Nicolas_46 Microsoft Office Excel 2 04.11.2012 18:58
Удаление элементов массива. Маx Паскаль, Turbo Pascal, PascalABC.NET 4 20.09.2012 22:50
Удаление элементов массива LittleStudent Помощь студентам 0 10.04.2011 12:24
Удаление элементов из массива Jasper92 Общие вопросы C/C++ 3 06.03.2010 13:04