c 練習 高算使用者排序

2021-09-29 13:53:04 字數 3291 閱讀 6998

題目:

高效能計算需要統計年計算量,按core/小時收費

要求:

1.找出使用時間 <24小時的使用者,刪除掉該記錄,輸出最終排序後結果。

2.修改並補全demo.cpp**。

檔案

zhang 0.292778

huang 0.020000

xing 269970.744200

lisi 1142826.668000

wangbo 0.138889

lichao 715.458333

zhangta 36579.698890

jiami 12175.304720

tian 1749160.207000

wang5 2.447222

geng 627.357778

yang 1249.143333

wangxue 4879.451389

yuemu 1231745.881000

wangy 0.001111

demo 274168.746100

cui 0.000000

jing 87924.224440

lusu 2346727.028000

***x 1.425278

zhangfei 0.166667

wyibo 417411.457500

yangai 2627.677778

cao 0.039444

huangt 52.162222

wbiti11129 17018.470560

lilaoshi 11.533333

wangshi 398.188333

laoshi 43.765556

caojing 626.561667

test3 66.179444

lihua 33894.585560

hongtongtong 0.498056

wruan 3242309.689000

hping_c1 9.558611

demo.cpp

#include #include #include #include #include #include #include using namespace std;

//using namespace std::placeholders;

struct coreuser ;

istream& operator>>(istream& in, coreuser& core)

struct sortuser

};int main(int argc, char **ar**)

// type your code bellow.

in.close();

}

思路:

1.篩選:不符合條件的用v.erase(iter)刪除

2.排序:demo中提供了sortuser()函式可作為函式物件傳入sort中

3.輸出:copy函式

#include #include #include #include #include #include #include #include #include using namespace std;

//using namespace std::placeholders;

struct coreuser ;

istream& operator>>(istream& in, coreuser& core)

bool operator<(const coreuser &c,const double time)

// type your code bellow.

vector::iterator it=v.begin();

for(;it!=v.end();it++)

}sort(v.begin(),v.end(),sortuser());

copy(v.begin(),v.end(),ostream_iterator(cout,"\n"));

in.close();

}

輸出:

laoshi          43.7656

huangt 52.1622

test3 66.1794

wangshi 398.188

caojing 626.562

geng 627.358

lichao 715.458

yang 1249.14

yangai 2627.68

wangxue 4879.45

jiami 12175.3

wbiti11129 17018.5

lihua 33894.6

zhangta 36579.7

jing 87924.2

xing 269971

demo 274169

wyibo 417411

lisi 1.14283e+006

yuemu 1.23175e+006

tian 1.74916e+006

lusu 2.34673e+006

wruan 3.24231e+006

遇到的問題:

1.過載"<<"

ostream& operator<<(ostream& out,coreuser &core)' and '……'}

改正:ostream& operator<<(ostream& out,const coreuser &core)

2.輸出格式:

#include cout.setf(ios::left) 設定為左對齊,預設右對齊

setw(n) :設域寬為n

3.讀取檔案

ifstream in("total.txt");

if (!in)

return exit_failure;

coreuser u;

vectorv;

while (in >> u)

C 實驗 對高算使用者排序

練習物件導向程式設計 練習stl中deque容器的使用 能根據要求實現相應的功能。某某大學高效能計算需要統計年計算量,按 core 小時收費 找出使用時間 24小時的使用者,刪除掉該記錄,輸出最終排序後結果。wrb 3242309.689 luhg 2346727.028 tianxx 174916...

C 排序演算法練習 快速排序

在所有的技藝中,武功是最強調內功的,比如同樣都學了辟邪劍譜,為什麼岳不群要比林平之厲害?武功的招式固然重要,但沒有深厚的內功,威力會大打折扣.那麼,內功是怎麼練出來的呢?冬練三九,夏練三伏,古人早有定論.而這些道理用在程式開發上也一樣適用.include using namespace std 演算...

c 習題練習 排序1

題目要求 輸入n個數,將n個數按從小到大的順序輸出 n 10000 輸入樣例 8 注 要輸入的數的數量 4 5 2 9 8 輸出樣例 2 4 5 8 9 資料排序1 輸入一串數,按從小到大排序 include using namespace std int main 宣告乙個n位陣列 儲存進陣列 f...