#include<iostream> using namespace std; #include"Employee.h" #include"print.h" #include"rank.h" const int plen = 6; Employee person[plen] = { {1,"jone",339.0}, {2,"david",449.0}, {3,"marit",311.0}, {4,"jasen",623.0}, {5,"peter",400.0}, {6,"yoke",511.0}, }; void main() { rank(person,plen); for (int k = 0; k < plen; k++) { printEmployee( person[k]); } }#pragma once #include<iostream> using namespace std; #include"Employee.h" #include"print.h" void rank(Employee person[]);rank函数不正确
时间: 2023-07-19 18:27:05 浏览: 165
#include"iostream.h"
3星 · 编辑精心推荐
根据你提供的代码,rank函数的定义确实是不正确的,代码中没有给出rank函数的完整定义,只有函数声明,无法确定rank函数的具体实现。正确的rank函数应该是一个void类型的函数,接受一个Employee类型的数组和数组长度作为参数,实现对员工信息按照工资从高到低排序。以下是一个可能的rank函数的实现:
```c++
void rank(Employee person[], int plen) {
for (int i = 0; i < plen - 1; i++) {
for (int j = 0; j < plen - 1 - i; j++) {
if (person[j].salary < person[j+1].salary) {
Employee temp = person[j];
person[j] = person[j+1];
person[j+1] = temp;
}
}
}
}
```
这个rank函数采用冒泡排序的方法,对员工信息按照工资从高到低进行排序。
阅读全文