Хорошо, это было задание, которое я вычитал из-за того, что вывод был отображен назад. Я должен был пригласить пользователя для ввода, а затем отобразить ввод в порядке убывания, но у меня проблема с дисплеем. У меня есть два массива, один год [] для хранения месяцев и один month[totalMonths]
для ввода пользовательского ввода. Когда я сортирую и показываю вход, year[]
не соответствует месяцам, он исправлен. Например, если пользователь вводит 1 для января, 2 для февраля и 3 для Мар, дисплей будет; Jan: 3 февраля: 2 Mar: 1Сортировка ввода работает в обратном направлении
Любые идей о том, как я могу получить месяцев, чтобы соответствовать с его соответствующим входом для дисплея? Вот вроде и функция отображения:
void sortArray(double month[], string year[], int totalMonths)
{
int temp;
bool swap;
do
{
swap = false;
for(int count = 0; count < totalMonths - 1; count++)
{
if(month[count] < month[count + 1])
{
temp = month[count];
month[count] = month[count + 1];
month[count + 1] = temp;
swap = true;
}
}
} while(swap);
cout << "------------------------------------------------------------" << endl;
cout << "Here are the months rainfall statistics sorted from highest to lowest: " << endl;
for (int index = 0; index < totalMonths; index++)
cout << year[index] << "\t " << setw(5) << month[index] << endl;
}
Вот мое string year[]
определения:
string year[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
I suppost your year array содержит somthing like: {"jan", "feb", "mar", ...}? Можете ли вы распечатать определение годового стола plz – grifos
Я только что обновил определение моего года [] в своем сообщении. – Gmenfan83
это ставит наибольший элемент сверху; когда вы меняете, вы должны поменять как месяц, так и год (и любые другие поля, которые вы связали вместе) – Adrian