統計電影票房排名前10的電影並存入另乙個檔案

2021-06-25 18:26:35 字數 2691 閱讀 6242

今天看到乙個筆試題,是這樣的:給定乙個檔案(m.dat),裡面儲存了各個電影票房統計,格式如下:

《2012》                                索尼                $769.7

《哈利波特與死亡聖器(上)》              華納兄弟            $952.0

《星球大戰》                            二十世紀福克斯      $775.4

《怪物史萊克4》                         派拉蒙/夢工廠       $750.0

《阿凡達》                              二十世紀福克斯      $2,782.2

《哈利波特與火焰杯》                    華納兄弟            $895.9

《哈利波特與混血王子》                  華納兄弟            $934.0

《指環王2:雙塔奇兵》                   新線                $925.3

《蝙蝠俠前傳2:黑暗騎士》               華納兄弟            $1,001.9

《哈利波特與魔法石》                    華納兄弟            $974.7

《海底總動員》                          迪士尼              $867.9

《功夫熊貓》                            派拉蒙/夢工廠       $631.7

《加勒比海盜3:世界的盡頭》             迪士尼              $961.0

《哈利波特與阿茲卡班的囚徒》            華納兄弟            $795.6

《e.t.》                                環球                $792.9

《奪寶奇兵4:水晶骷髏王國》             派拉蒙              $786.6

《指環王3:王者歸來》                   新線                $1,119.1

《怪物史萊克2》                         夢工廠              $919.8

《玩具總動員3》                         迪士尼              $1,063.2

《黑客帝國2:重灌上陣》                 華納兄弟            $742.1

。。。。。。。

要求寫程式統計票房排名前10的電影,並把統計結果存入另乙個檔案。自己試著用c++實現一下,**分享如下:(linux下gcc 編譯)

gcc編譯,執行時要傳入兩個命令列引數,比如:./a.outm.dat   li.dat(m.dat為源票房檔案,li.dat 為存放前10的檔案)

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

class movie

//過載輸出操作

friend ostream& operator<< (ostream& os,

const movie& movie)

//過載小於號,用於list排序

bool operator< (const movie& movie) const

private:

//把從檔案讀取的string轉換為double返回

double gross (void) const

string m_title; //電影名

string m_comp; //出品公司名

string m_gross; //票房

};//讀檔案,讀取結果存入vector& vm

bool read (const char* file, vector& vm)

movie movie;

while (ifs >> movie) //呼叫過載的》操作符

vm.push_back (movie);

ifs.close ();

return true;

}//寫檔案,把vector& vm中資料寫入檔案

bool write (const char* file, const vector& vm)

for (vector::const_iterator it = vm.begin();

it != vm.end (); ++it)

ofs << *it << endl; //呼叫過載的《操作符

ofs.close ();

return true;

}int main (int argc, char* argv)

vectorvm;

if (! read (argv[1], vm))

return -1;

sort (vm.begin (), vm.end ()); //對vm中元素排序

if (vm.size () > 10)

vm.resize (10); //取排序前10個

if (! write (argv[2], vm))

return -1;

return 0;

}

電影票房案例分析

import pandas as pd 載入資料 def read data file root dataframe pd.read csv file root print 資料的基本資訊 print dataframe.info print 資料的行是 i,列是 i dataframe.shape...

Python貓眼電影最近上映的電影票房資訊

前言 ps 如程式設計客棧有需要python學習資料的小夥伴可以加點選下方鏈結自行獲取 基本環境配置 相關模組pip安裝即可 目標 資料介面 請求網頁獲取資料 import requests url params cookies headers response requests.get url u...

python爬取電影票房網並儲存csv

目標 電影票房網 目標 目標資料 1 名次 2 電影名稱 3 日期 4 票房 5 總場次 6 廢場 7 人次 8 上座率 9 票價 任務要求 1 使用urllib或requests庫實現該 網頁源 的獲取,並將源 進行儲存 2 自主選擇re bs4 lxml中的一種解析方法對儲存的的源 讀取並進行解...