Другие языки программирования и технологии

Помогите найти ошибку в задаче, сортировка методом пузырька работает неправильно.

//Дана ведомость зарплаты сотрудников, в которой указаны табельный номер и зарплата каждого. Вывести на экран список табельных номеров сотрудников в порядке увеличения зарплаты.

#include "stdafx.h"
#include <iostream>
#include <locale>
using namespace std;

void _tmain()
{setlocale (LC_ALL, "Russian");
const int n=5;
int f[n], z[n];
int x, p, t, l, i;
for(i=0;i<n;i++)>>f;
cout<<"Введите зарплату: ";
cin>>z;
}
for(l=0;l<n;l++)>1;t--)
{if(z[t]>z[t-1])
{p=z[t],z[t]=z[t-1],z[t-1]=p;
x=f[t];
f[t]=f[t-1];
f[t-1]=x;
}
}
}
cout<<"Список табельных номеров: "<
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
struct employee {
    unsigned organic_number;
    float salary;
};
int main() {
    wcout.imbue(locale("rus_rus.866"));
    const size_t size = 5;
    employee sheet[size];
    for (size_t emp = 0; emp < size; emp++) {
        wcout << L"Введите табельный номер: ";
        cin >> sheet[emp].organic_number;
        wcout << L"Введите зарплату: ";
        cin >> sheet[emp].salary;
    }
    employee temp;
    size_t m;
    for (size_t n = 1; n < size; n++)
        for (m = 0; m < size - n; m++)
            if (sheet[m].salary > sheet[m + 1].salary) {
                temp = sheet[m];
                sheet[m] = sheet[m + 1];
                sheet[m + 1] = temp;
            }
    streamsize w = 11;
    wcout << endl << L"Табельный номер\t Зарплата\n\n";
    for (size_t emp = 0; emp < size; emp++)
        cout << setw(w) << sheet[emp].organic_number << ' '
             << setw(w) << sheet[emp].salary << endl;
    cin.get(); cin.get();
    return 0;
}
СШ
Саша Штык
65 084
Лучший ответ
cin>>z;
тут точно заполняется массив? Я с си не очень близко знаком, но мне кажется, что z[ i ] Или это заменялка местная так покорёжила? Клади ты код на pastebin.com

Кстати, есть вариант обменять значения двух переменных черех xor не привлекая третью переменную.
Ещё я не очень понял зачем в массиве x, но я обычно и пузырёк делаю двумя вложенными циклами, а тут странная конструкция в for, которую наверняка ещё и мейлру погрыз.
пузырьковая сортировка- это поиск наибольшего (наименьшего) при каждом проходе.
Олег .
Олег .
4 361
http: //pastebin. com/ddz4vimz
там в цикле не l а i