У меня был предыдущий вопрос об организации некоторых входов по имени, идентификатору, а затем сумме. Теперь, когда я понял, как их организовать, мне нужно иметь 3 выхода; первый по имени, второй по идентификатору, а последний по сумме. Могу ли я использовать регистр и переключение операторов? Каждый раз, когда я пытался, все три выхода были по имени.
вот что у меня есть:
void GeneralSort(const int SortItem, const int count, CustomerProfile c[])
{
string tempname;
string tempid;
float tempamount;
for(int iteration = 1; iteration < count; iteration ++)
{
for(int n = 0; n < (count-iteration); n++)
{
if(c[n].CustomerName > c[n+1].CustomerName)
{
tempname = c[n].CustomerName;
c[n].CustomerName = c[n+1].CustomerName;
c[n+1].CustomerName = tempname;
}
if(c[n].CustomerId > c[n+1].CustomerId)
{
tempid = c[n].CustomerId;
c[n].CustomerId = c[n+1].CustomerId;
c[n+1].CustomerId = tempid;
}
if(c[n].AmountDue > c[n+1].AmountDue)
{
tempamount = c[n].AmountDue;
c[n].AmountDue = c[n+1].AmountDue;
c[n+1].AmountDue = tempamount
}
как мне получить остальные данные, чтобы они имели 2-й выход по идентификатору и 3-й вывод по сумме. Я думаю, что вы можете добавить операторы переключения, но когда я устал, все три выхода были по первому набору, который по имени. любая помощь приветствуется. я не ожидаю, что кто-нибудь решит все это за меня, просто совет, чтобы указать мне правильное направление.
пример вывода:
//by name
name id amount
able b2 24
bob g3 68
carry a4 12
//by id
name id amount
carry a4 12
able b2 24
bob g3 68
//by amount
name id amount
carry a4 12
able b2 24
bob g3 68