(1)定義學生類,其中包含學號、姓名、c++課、高數和英語成績及總分資料成員,成員函式根據需要確定。
(2)讀入學生的成績,並求出總分,用物件陣列進行儲存。ascii檔案score.dat中儲存的是100名學生的學號、姓名和c++課、高數和英語成績。
(3)將所有資料儲存到乙個二進位制檔案binary_score.dat中,最後通過鍵盤輸入你的資訊,並寫入到檔案中(咱不謙虛,三科全100分,期末求好運)。
(4)為驗證輸出檔案正確,再將binary_score.dat中的記錄逐一讀出到學生物件中並輸出檢視。
(5)用binaryviewer命令檢視二進位制檔案檔案
解決**:
#include #include#include#includeusing namespace std;
//(一)定義學生類
class student
; student(int n, string nam, double c, double m, double e):num(n),name(nam),cpp(c),math(m),english(e)
void set_value(int n,string nam, double c, double m, double e);
string get_name()
double get_cpp()
double get_math()
double get_english()
double get_total()
void set_cpp(double c)
void set_math(double m)
void set_english(double e)
void set_total(double t)
friend ostream& operator<
private:
int num;
string name;
double cpp;
double math;
double english;
double total;
};void student::set_value(int n,string nam, double c, double m, double e)
ostream& operator<
infile.close();
//(三)將所有資料儲存到乙個二進位制檔案binary_score.dat中
ofstream outfile("binary_score.dat",ios::out|ios::binary);
if(!outfile)
{cerr>sname>>scpp>>smath>>senglish;
student me(n,sname, scpp, smath, senglish);
outfile.write((char*)&me, sizeof(me));
outfile.close();
//(四)為驗證輸出檔案正確,再將binary_score.dat中的記錄逐一讀出到學生物件中並輸出檢視。
student s;
ifstream infile2("binary_score.dat",ios::in|ios::binary);
if(!infile2)
{cerr<
二進位制檔案檢視:
第十五周上機專案1 用二進位制檔案處理學生成績
專案1 用二進位制檔案處理學生成績 1 定義學生類,其中包含學號 姓名 c 課 高數和英語成績及總分資料成員,成員函式根據需要確定。2 讀入學生的成績,並求出總分,用物件陣列進行儲存。ascii檔案score.dat中儲存的是100名學生的學號 姓名和c 課 高數和英語成績。3 將所有資料儲存到乙個...
第十五周 專案二 二進位制檔案瀏覽器
問題及 檔名稱 one.cpp 作 者 吳勝男 完成日期 2015年6月21日 版 本 號 v1.0 問題描述 做乙個類似binaryviewer的檢視二進位制檔案的程式,輸入檔名後,可以以16進製制和ascii對照的方式列出該檔案的內容 輸入描述 略 程式輸出 略 include include ...
第十五天學習 ASCII碼檔案與二進位制檔案的區別
1 二進位制檔案是按該資料型別在記憶體中的儲存形式儲存的 2 文字檔案則是將該資料型別轉換為可在螢幕上顯示的形式儲存的 1 ascii儲存方式所佔空間較多且所佔空間大小與數值大小有關 1 ascii碼檔案在外存上以ascii碼存放,而在記憶體中的資料都是以二進位制存放,因此當進行檔案讀寫時要進行轉換...