freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c第九章習(xí)題解答-資料下載頁

2025-01-14 20:51本頁面
  

【正文】 har*)amp。temps2,sizeof(T))。//此方法與用成員函數(shù)完全相同 j++。 } } while(ins1){//復(fù)制第一個表的剩余元素 ((char*)amp。temps1,sizeof(T))。 ((char*)amp。temps1,sizeof(T))。 i++。 } while(jns2){//復(fù)制第二個表的剩余元素 ((char*)amp。temps2,sizeof(T))。 ((char*)amp。temps2,sizeof(T))。 j++。 } ()。 ()。 ()。}int main(){ sinx temp,list1[100],list2[100],list[100]。 int i,k1,k2,k3。 cout建立正弦表1(0,2,4,~80度)endl。 k1=1。 for(i=0。i=80。i=i+2){ (i)。 k1++。 ordinsert(temp,list1,k1)。//除排序外,同時保證二次進(jìn)入時不會有重復(fù)的表項(xiàng) } writefile(mydata1,list1,k1)。 (0)。 for(i=0。i=k1。i++) list1[i]=temp。//數(shù)組清空,以便檢驗(yàn)文件 k1=readfile(mydata1,list1)。//由文件重新寫入數(shù)組 listshow(list1,k1)。 cout建立正弦表2(1,3,5,~81度。82,83,~90度)endl。 k2=1。 for(i=82。i=90。i++){ (i)。 k2++。 ordinsert(temp,list2,k2)。 } for(i=1。i=81。i=i+2){ (i)。 k2++。 ordinsert(temp,list2,k2)。//除排序外,同時保證二次進(jìn)入時不會有重復(fù)的表項(xiàng) } writefile(mydata2,list2,k2)。 (0)。 for(i=0。i=k2。i++) list2[i]=temp。//數(shù)組清空,以便檢驗(yàn)文件 k2=readfile(mydata2,list2)。//由文件重新寫入數(shù)組 listshow(list2,k2)。 Mergesinx(mydata1,mydata2,mydata)。//按題意要求兩個文件歸并直接使用文件 cout輸出正弦表(0,1,~90度)endl。 k3=readfile(mydata,list)。//由文件重新寫入數(shù)組 listshow(list,k3)。 return 0。} 將學(xué)校里的學(xué)生,定義為一個學(xué)生數(shù)組類,數(shù)組對象動態(tài)建立,初始為3個元素,不夠用時擴(kuò)充一倍。要求放在構(gòu)造函數(shù)中用二進(jìn)制數(shù)據(jù)文件建立數(shù)組元素對象,在析構(gòu)函數(shù)中保存數(shù)據(jù)和關(guān)閉文件。第一次運(yùn)行時,建立空的數(shù)據(jù)文件,由鍵盤輸入建立數(shù)組元素對象,并寫入文件,程序退出時,關(guān)閉文件;下一次運(yùn)行時就可以由文件構(gòu)造對象,恢復(fù)前一次做過的工作。解:includefstreamincludeiostreamincludestringincludeiomanipusing namespace std。class student{ int id 。 //學(xué)號 string name。 // 姓名 char sex。 // 性別 int age。 // 年齡 string address。 //家庭地址 float eng, phy, math, electron。 //英語,物理,數(shù)學(xué)和電子學(xué)成績public: student(int=0,string=,char=39。39。,int=0,string=,float=0,float=0,float=0,float=0)。 void Bdatatofile(fstream amp。 dest)。 //數(shù)據(jù)寫入文件流類 void Bdatafromfile(fstream amp。 sour)。 //由文件流類讀出數(shù)據(jù) bool operator=(student amp。ele){return id=。} bool operator==(student amp。ele){return id==。} friend ostreamamp。operator(ostreamamp。dest,studentamp。st)。 //重載插入運(yùn)算符 friend istreamamp。operator(istreamamp。sour,studentamp。st)。 //重載提取運(yùn)算符}。student::student(int i,string n,char s,int a,string add,float en,float ph,float ma,float ele){ id=i。 name=n。 sex=s。 age=a。 address=add。 eng=en。 phy=ph。 math=ma。 electron=ele。}void student::Bdatatofile(fstream amp。 dest){ //文件流類作為形式參數(shù)必須是引用 ((char*)amp。id,sizeof(int))。 ((),20)。//由string類的c_str()函數(shù)轉(zhuǎn)為char* ((char*)amp。sex,sizeof(char))。 ((char*)amp。age,sizeof(int))。 ((),20)。//由string類的c_str()函數(shù)轉(zhuǎn)為char* ((char*)amp。eng,sizeof(float))。 ((char*)amp。phy,sizeof(float))。 ((char*)amp。math,sizeof(float))。 ((char*)amp。electron,sizeof(float))。}void student::Bdatafromfile(fstream amp。 sour){ //文件流類作為形式參數(shù)必須是引用 char Desc[20]。 ((char*)amp。id,sizeof(int))。 (Desc,20)。//必須由字符數(shù)組過渡 name=Desc。 ((char*)amp。sex,sizeof(char))。 ((char*)amp。age,sizeof(int))。 (Desc,20)。//必須由字符數(shù)組過渡 address=Desc。 ((char*)amp。eng,sizeof(float))。 ((char*)amp。phy,sizeof(float))。 ((char*)amp。math,sizeof(float))。 ((char*)amp。electron,sizeof(float))。}//由此可見讀和寫是完全對稱的過程,次序決不能錯ostreamamp。operator(ostreamamp。dest,studentamp。st){ //文件流類作為形式參數(shù)必須是引用 dest39。\t39。39。\t39。39。\t39。39。\t39。39。\t39。 39。\t39。39。\t39。39。\t39。endl。 return dest。}istreamamp。operator(istreamamp。sour,studentamp。st){ //文件流類作為形式參數(shù)必須是引用 cout請輸入學(xué)號:endl。 sour。 cout請輸入姓名:endl。 sour。 cout請輸入性別:endl。 sour。 cout請輸入年齡:endl。 sour。 cout請輸入地址:endl。 sour。 cout請輸入英語、物理、數(shù)學(xué)、電子各科成績:endl。 sour。 return sour。}template typename Tclass Array{ T *elements。 int Subscript。 //已用最大下標(biāo)值 int maxSize。 fstream datafile。public: Array(int=3)。 //為了便于檢驗(yàn),缺省元素?cái)?shù)暫為3 ~Array()。 bool IsFull() const{return Subscript==maxSize1。} void renews()。 //內(nèi)存擴(kuò)大一倍 void show(){ cout已用最大下標(biāo)值Subscript39。\t39??捎迷?cái)?shù)maxSizeendl。 } void ordinsert(Tamp。)。 //輸入時以學(xué)號為關(guān)鍵字排序 friend ostreamamp。operator(ostreamamp。dest,Arrayamp。ar)。 //重載插入運(yùn)算符}。template typename T ArrayT::Array(int maxs){ maxSize=maxs。 Subscript=1。 //私有數(shù)據(jù)不容許直接賦初值,必須在構(gòu)造函數(shù)中賦初值 T temp。 elements=new T[maxSize]。 (,ios::binary|ios::in)。 //如文件不存在,打開失敗 if(!datafile==0){ while(!()){ (datafile)。 if(()==0){ //讀到無數(shù)據(jù)可讀后,即讀入不成功,eofbit為1 ordinsert(temp)。 //即使原文件未排序,退出時按排好序的重存 } } ()。 //必須放此處,打開成功才能關(guān)閉 } (0)。 //前面曾經(jīng)讀到文件結(jié)束或文件打開失敗,流無法恢復(fù)}template typename T ArrayT::~Array(){ int i。 (,ios::binary|ios::out)。 for(i=0。i=Subscript。i++) elements[i].Bdatatofile(datafile)。 ()。 delete[]elements。}template typename T void ArrayT::renews(){ int i。 T *temp=elements。 maxSize*=2。 elements=new T[maxSize]。 for(i=0。i=Subscript。i++) elements[i]=temp[i]。 delete[]temp。}template typename T void ArrayT::ordinsert(T amp。 elem){ //輸入時以學(xué)號為關(guān)鍵字排序 int i,j。 if(IsFull()) renews()。 for(i=0。i=Subscript。i++) if(elem=elements[i]) break。 if(!(elem==elements[i])){ for(j=Subscript。j=i。j) elements[j+1]=elements[j]。 Subscript++。 } elements[i]=elem。 show()。}template typename T ostreamamp。operator(ostreamamp。dest,ArrayTamp。ar){ int i。 for(i=0。i=。i++) cout[i]。 return dest。}int main(){ Arraystudent mylist。 student temp。 char ch。 cout是否輸入新學(xué)生信息?Y or Nendl。 cinch。 while(ch==39。Y39。||ch==39。y39。){ ()。//吸收回車 cintemp。 (temp)。 cout是否繼續(xù)輸入?Y or Nendl。 cinch。 } coutmylist。 return 0。}
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1