C上機實驗報告實驗四_第1頁
C上機實驗報告實驗四_第2頁
C上機實驗報告實驗四_第3頁
C上機實驗報告實驗四_第4頁
C上機實驗報告實驗四_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

.\實驗四數(shù)組、指針與字符串實驗目的學習使用數(shù)組學習字符串數(shù)據(jù)的組織和處理學習標準C++庫的使用掌握指針的使用方法練習通過Debug觀察指針的內(nèi)容及其所指的對象的內(nèi)容謝謝閱讀聯(lián)系通過動態(tài)內(nèi)存分配實現(xiàn)動態(tài)數(shù)組,并體會指針在其中的作用精品文檔放心下載分別使用字符數(shù)組和標準C++庫練習處理字符串的方法實驗要求1.編寫并測試3*3矩陣轉(zhuǎn)置函數(shù),使用數(shù)組保存3*3矩陣。感謝閱讀2.使用動態(tài)內(nèi)存分配生成動態(tài)數(shù)組來重新完成上題,使用指針實現(xiàn)函數(shù)的功能。感謝閱讀3.編程實現(xiàn)兩字符串的連接。要求使用字符數(shù)組保存字符串,不要使用系統(tǒng)函數(shù)。謝謝閱讀4.使用string類定義字符串對象,重新實現(xiàn)上一小題。精品文檔放心下載5.定義一個Employee類,其中包括姓名、街道地址、城市和郵編等屬性,以及change_name()精品文檔放心下載display()等函數(shù)。Display()顯示姓名、街道地址、城市和郵編等屬性,change_name()改變對象的姓名屬性。實現(xiàn)并測試這個類。謝謝閱讀6.定義包含5個元素的對象數(shù)組,每個元素都是Employee類型的對象。感謝閱讀7.(選做)修改實驗4中的選做實驗中的people(人員)類。具有的屬性如下:姓名charname[11]、編號charnumber[7]、性別charsex[3]、生日birthday、身份證號charid[16]。其中“出生日期”定義為一個“日期”類內(nèi)嵌對象。用成員函數(shù)實現(xiàn)對人員信息的錄入和顯示。要求包括:構(gòu)造函數(shù)和析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、內(nèi)聯(lián)成員函數(shù)、聚集。在測試程序中定義people類的對象數(shù)組,錄入數(shù)據(jù)并顯示。謝謝閱讀實驗內(nèi)容及實驗步驟1.編寫矩陣轉(zhuǎn)置函數(shù),輸入?yún)?shù)為3*3整形數(shù)組,使用循環(huán)語句實現(xiàn)矩陣元素的行列對調(diào),注意在循環(huán)語句中究竟需要對哪些元素進行操作,編寫main()函數(shù)實現(xiàn)輸入、輸出。程序名:lab6_1.cpp。精品文檔放心下載2.改寫矩陣轉(zhuǎn)置函數(shù),參數(shù)為整型指針,使用指針對數(shù)組元素進行操作,在main()函數(shù)中使用new操作符分配內(nèi)存生成動態(tài)數(shù)組。通過Debug觀察指針的內(nèi)容及其所指的對象中的內(nèi)容。程序名:lab6_2.cpp。精品文檔放心下載3.編程實現(xiàn)兩字符串的連接。定義字符數(shù)組保存字符串,在程序中提示用戶輸入兩個字符串,實現(xiàn)兩個字符串的連接,最后用cout語句顯示輸出。程序名:lab6_3.cpp。用cin實現(xiàn)輸入,注意,字符串的結(jié)束標志是ASCII碼0,使用循環(huán)語句進行字符串間的字符拷貝。精品文檔放心下載4.使用string類定義字符串對象,編程實現(xiàn)兩字符串的連接。在string類中已重載了運算符“+=”實現(xiàn)字符串的連接,可以使用這個功能。程序名:lab6_4.cpp。謝謝閱讀5.在employee.h文件中定義Employee類。Employee類具有姓名、街道地址、城市和郵編等私有數(shù)據(jù)成員,在成員函數(shù)中,構(gòu)造函數(shù)用來初始化所有數(shù)據(jù)成員;display()中使用cout顯示感謝閱讀.\姓名、街道地址、城市和郵編等屬性,change_name()改變類中表示姓名屬性的數(shù)據(jù)成員。在主程序中定義這個類的對象并對其進行操作。程序名:lab6_5.cpp。謝謝閱讀6.使用上一小題中定義的Employee類定義對象數(shù)組emp[5],使用循環(huán)語句把數(shù)據(jù)顯示出來。感謝閱讀程序名:lab6_6.cpp。4.思考題1.如何存儲和處理字符串?(1)可以利用字符數(shù)組存儲和處理字符串;(2)利用系統(tǒng)提供的string類存儲和處理字符串。精品文檔放心下載2.頭文件<string.h>和頭文件<string>有何區(qū)別?精品文檔放心下載包含頭文件<string.h>后,可以使用系統(tǒng)的字符串處理函數(shù),如strcat(連接).strcpy(復制).strcmp(比較).strlen(求長度).strlwr(轉(zhuǎn)換為小寫).strupr(轉(zhuǎn)換為大寫)等等;而包含頭文件<string>后,則可以定義string類,并且使用系統(tǒng)提供的string類操作符對string類型的對象進行處理。謝謝閱讀3.有幾種方法來表示和處理數(shù)組元素?(1)數(shù)組下標方法,如a[i](2)指針的方法,如int*p=&a[0]5.源程序1.lab6_1.cpp#include<iostream>usingnamespacestd;inta[3][3];voidshowTrans(){inti,j;cout<<"Thetranspositionmatrixis:"<<endl;感謝閱讀for(j=0;j<3;j++){for(i=0;i<3;i++){cout<<a[i][j];cout<<"";}cout<<endl;}}voidinput(){inti,j;cout<<"Pleaseinputyour3*3matrix:"<<endl;精品文檔放心下載for(i=0;i<3;i++){for(j=0;j<3;j++){.\cin>>a[i][j];}}}intmain(){input();showTrans();return0;}2.lab6_2.cpp#include<iostream>usingnamespacestd;int*p[9];voidshowTrans(){inti,j;cout<<"Thetranspositionmatrixis:"<<endl;感謝閱讀for(i=0;i<3;i++){for(j=i;j<9;j=j+3){cout<<*p[j];cout<<"";}cout<<endl;}}voidinput(){inti,n;cout<<"Pleaseinputyour3*3matrix:"<<endl;感謝閱讀for(i=0;i<9;i++){cin>>n;p[i]=newint(n);}}intmain(){input();showTrans();.\inti;for(i=0;i<9;i++){deletep[i];}return0;}3.lab6_3.cpp#include<iostream>//不使用系統(tǒng)自帶函數(shù)strcpyusingnamespacestd;chara[20]={"/0"},b[20]={"/0"},c[45]={"/0"};精品文檔放心下載intmain(){inti,j,k;cout<<"Inputthefirststring:"<<endl;精品文檔放心下載cin.getline(a,20,'\n');cout<<"Inputthesecondstring:"<<endl;謝謝閱讀cin.getline(b,20,'\n');intm=0,n=0;//將數(shù)組a中的字符串拷貝到數(shù)組c中for(k=0;k<45,a[m]!='\0';k++,m++)精品文檔放心下載{c[k]=a[m];}//將數(shù)組b中的字符串接著a,拷貝到數(shù)組c中謝謝閱讀for(;k<45,b[n]!='\0';k++,n++)感謝閱讀{c[k]=b[n];}cout<<c;return0;}lab6_4.cpp#include<iostream>#include<cstring>usingnamespacestd;感謝閱讀chara[20]={"/0"},b[20]={"/0"};intmain()謝謝閱讀{.\cout<<"Inputthefirststring:"<<endl;精品文檔放心下載cin.getline(a,20,'\n');cout<<"Inputthesecondstring:"<<endl;精品文檔放心下載cin.getline(b,20,'\n');strings1=a;strings2=b;strings3=s1+s2;cout<<s3;return0;}5. Employee.h#ifndefEmployee_H_INCLUDED感謝閱讀#defineEmployee_H_INCLUDED謝謝閱讀classEmployee{private:charname[15];charaddress[25];charcity[10];intpostcode;public:Employee();Employee(charn,chara,charc,intp);精品文檔放心下載~Employee();voidchange_name();voidchange_address();voidchange_city();voidchange_postcode();voiddisplay();};#endif//Employee_H_INCLUDED感謝閱讀Employee.cpp#include<iostream>#include"Employee.h"usingnamespacestd;Employee::Employee(){}Employee::Employee(charn,chara,charc,intp)謝謝閱讀{.\name[0]=n;name[1]='\0';address[0]=a;address[1]='\0';city[0]=c;city[1]='\0';postcode=p;}Employee::~Employee(){}voidEmployee::change_name()感謝閱讀{cout<<"Pleaseinputyourchangedname:"<<endl;精品文檔放心下載cin.getline(name,15,'\n');精品文檔放心下載}voidEmployee::change_address()感謝閱讀{cout<<"Pleaseinputyourchangedaddress:"<<endl;謝謝閱讀cin.getline(address,25,'\n');感謝閱讀}voidEmployee::change_city()精品文檔放心下載{cout<<"Pleaseinputyourchangedcity:"<<endl;精品文檔放心下載cin.getline(city,10,'\n');謝謝閱讀}voidEmployee::change_postcode()感謝閱讀{cout<<"Pleaseinputyourchangedpostcode:"<<endl;感謝閱讀cin>>postcode;}voidEmployee::display(){cout<<"Yourinformationshowsasfollow:"<<endl;精品文檔放心下載cout<<"name:"<<name<<endl;謝謝閱讀cout<<"address:"<<address<<endl;謝謝閱讀cout<<"city:"<<city<<endl;謝謝閱讀cout<<"postcode:"<<postcode<<endl;精品文檔放心下載}intmain(){Employeeperson(1,1,1,1);person.display();person.change_name();person.change_address();person.change_city();.\person.change_postcode();person.display();return0;}6.Employee.h#ifndefEmployee_H_INCLUDED謝謝閱讀#defineEmployee_H_INCLUDED精品文檔放心下載classEmployee{private:charname[15];charaddress[25];charcity[10];intpostcode;public:Employee();Employee(charn,chara,charc,intp);謝謝閱讀~Employee();voidchange_name();voidchange_address();voidchange_city();voidchange_postcode();voiddisplay();};#endif//Employee_H_INCLUDED精品文檔放心下載Employee.cpp#include<iostream>#include"Employee.h"usingnamespacestd;Employee::Employee(){}Employee::Employee(charn,chara,charc,intp)謝謝閱讀{name[0]=n;name[1]='\0';address[0]=a;address[1]='\0';city[0]=c;.\city[1]='\0';postcode=p;}Employee::~Employee(){}voidEmployee::change_name()謝謝閱讀{cout<<"Pleaseinputyourchangedname:"<<endl;精品文檔放心下載cin.getline(name,15,'\n');謝謝閱讀}voidEmployee::change_address()精品文檔放心下載{cout<<"Pleaseinputyourchangedaddress:"<<endl;感謝閱讀cin.getline(address,25,'\n');精品文檔放心下載}voidEmployee::change_city()精品文檔放心下載{cout<<"Pleaseinputyourchangedcity:"<<endl;精品文檔放心下載cin.getline(city,10,'\n');精品文檔放心下載}voidEmployee::change_postcode()謝謝閱讀{cout<<"Pleaseinputyourchangedpostcode:"<<endl;謝謝閱讀cin>>postcode;}voidEmployee::display(){cout<<"Yourinformationshowsasfollow:"<<endl;謝謝閱讀cout<<"name:"<<name<<endl;謝謝閱讀cout<<"address:"<<address<<endl;感謝閱讀cout<<"city:"<<city<<endl;感謝閱讀cout<<"postcode:"<<postcode<<endl;謝謝閱讀}intmain(){Employeeemp[5]={Employee(1,1,1,1),Employee(2,2,2,2),Employee(3,3,3,3),Employee(4,4,4,4),Employee(5,精品文檔放心下載5,5,5)};inti;for(i=0;i<5;i++){emp[i].display();emp[i].change_name();emp[i].change_address();emp[i].change_city();.\emp[i].change_postcode();cin.get();}for(i=0;i<5;i++){cout<<"Theemp"<<i<<"";emp[i].display();}return0;}7.#include<iostream>#include<cstring>usingnamespacestd;//Date類classDate{private:intyear;intmonth;intday;public:Date();Date(inty,intm,intd);Date(Date&p);~Date();voidsetDate();voidshowDate();};//People類,其中含Date類型的數(shù)據(jù)classPeople{private:charname[11];charnumber[7];charsex[3];Datebirthday;charid[16];public:People();People(char*n,char*nu,char*s,Dateb,char*i);謝謝閱讀People(People&p);.\~People();voidsetName();voidsetNumber();voidsetSex();voidsetId();voidshowPeople();};//Date構(gòu)造函數(shù)Date::Date(){}Date::Date(inty,intm,intd)感謝閱讀{year=y;month=m;day=d;}Date::Date(Date&p){year=p.year;month=p.month;day=p.day;}//析構(gòu)inlineDate::~Date(){}//Date成員函數(shù),設置出生年月日voidDate::setDate(){inty,m,d;cout<<"Inputtheyear:";cin>>y;cout<<"Inputthemonth:";cin>>m;cout<<"Inputtheday:";cin>>d;year=y;month=m;day=d;}//Date內(nèi)聯(lián)成員函數(shù),輸出年月日inlinevoidDate::showDate()精品文檔放心下載{cout<<"Birthdayis"<<year<<"年"<<month<<"月"<<day<<"日"<<endl;精品文檔放心下載}//People構(gòu)造函數(shù)People::People(){};.\People::People(char*n,char*nu,char*s,Dateb,char*i)感謝閱讀{strcpy(name,n);strcpy(number,nu);strcpy(sex,s);birthday=b;strcpy(id,i);}People::People(People&p){strcpy(name,);strcpy(number,p.number);birthday=p.birthday;strcpy(id,p.id);}//People析構(gòu)inlinePeople::~People(){}精品文檔放心下載//People成員函數(shù),設置各類數(shù)據(jù)voidPeople::setName(){cout<<"Pleaseinputtheperson'sname:";精品文檔放心下載cin.getline(name,11,'\n');精品文檔放心下載}voidPeople::setNumber(){cout<<"Inputnumber:";cin.getline(number,7,'\n');感謝閱讀}voidPeople::setSex(){cout<<"Inputsex:";cin.getline(sex,3,'\n');}voidPeople::setId(){cout<<"Inputid:";

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論