东方亚洲欧a∨人在线观看|欧美亚洲日韩在线播放|日韩欧美精品一区|久久97AV综合

        C,,程序設(shè)計實習(xí)報告

        發(fā)布時間:2020-09-13 來源: 精準扶貧 點擊:

         目錄 一、實習(xí)內(nèi)容…………………………………………………………………………1 二、設(shè)計思路…………………………………………………………………………2 三、程序清單…………………………………………………………………………3 四、運行結(jié)果…………………………………………………………………………15 五、程序使用說明……………………………………………………………………20 六、總結(jié)及心得體會…………………………………………………………………21

         ? 一、實習(xí)內(nèi)容 課程設(shè)計得題目:《小型公司工資管理系統(tǒng)》設(shè)計 設(shè)計說明:公司主要有四類人員:經(jīng)理、技術(shù)員、銷售員、銷售經(jīng)理。程序要求存儲這些人得職工號、姓名、月工資、年齡、性別等信息。并且應(yīng)用程序中要求給出菜單,用于選擇各項功能。

         一、程序要求實現(xiàn)得功能即菜單目錄有: 1、數(shù)據(jù)輸入:輸入各種數(shù)據(jù); 2、數(shù)據(jù)統(tǒng)計:統(tǒng)計各銷售經(jīng)理下屬銷售員得銷售額及銷售額之與;銷售經(jīng)理工資進行冒泡排序; 3、數(shù)據(jù)打印:打印各類員工得數(shù)據(jù)信息; 4、數(shù)據(jù)備份:把各類員工得數(shù)據(jù)信息寫入文件中保存; 5、退出:退出本系統(tǒng),即結(jié)束程序得運行。

         二、工資得計算方法 A:經(jīng)理:固定月薪為8000 元;B:技術(shù)員:工作時間*小時工資(100 元/小時);C:銷售員:銷售額* 4%提成;D:銷售經(jīng)理:底薪(5000)+所轄部門銷售額總額* 0、5%。

         三、類得層次結(jié)構(gòu)大體如下 雇員類

          ↑ 技術(shù)員類

         經(jīng)理類

         銷售員類 ↓ 銷售經(jīng)理類 ? 二、設(shè)計思路

         1. (1)首先我們要搞清楚各類之間得繼承關(guān)系,設(shè)置基類 employee,其派生類manager,technician,salesman。再以 manager類為基類,再派生一個 salesmanager類,將各類得數(shù)據(jù)成員設(shè)計成 protected,方便派生類對基類得繼承; (2)在 public 里編寫數(shù)據(jù)輸入得函數(shù),在主函數(shù)中輸出菜單并定義各類得

         對象,通過對象來調(diào)用數(shù)據(jù)輸入函數(shù); 2. (1)在基類employee 中補充幾個返回各類數(shù)據(jù)得函數(shù)以用于返回輸入得各類值; (2)在主函數(shù)內(nèi)用冒泡法對銷售經(jīng)理得工資進行排序,定義一個 wage[]來將各銷售經(jīng)理下面得銷售員得銷售額進行儲存,定義一個all用于計算銷售經(jīng)理得銷售總額,以便于下面對其進行工資得計算 ; (3)第 2,3,4 步都用大量得 for 循環(huán)進行輸出,以實現(xiàn)表格得形成還有表格中數(shù)據(jù)得輸入;在主函數(shù)內(nèi)定義各類得對象,然后都就是直接通過類得對象調(diào)用類內(nèi)得函數(shù),運用 for循環(huán)進行打印,統(tǒng)計; 3。

         備份參照課本格式,選擇路徑及格式,運用 for循環(huán)備份;就就是那個 fstream之類得東西;、退出系統(tǒng)用exit(5)函數(shù)實現(xiàn); 4.主函數(shù)運用 switch 語句,將上述功能編為 case 1~5,每個 case后添加break; 5.程序結(jié)束。

         以上就是我所認為得該程序得幾個要點…………………………………、、

         三、程序清單 #include〈iostream> #include<string〉 #include<cmath> #include<iomanip〉 #include<fstream> using namespace std; const N=2; fstream outfile; class employee

         //基類,雇傭者 { protected:

          string name;

         ;xes rahc? int age; public:

          virtual void display()

        。 ;”:名姓其"<<tuoc?

         ;eman>>nic?

         cout〈<”性別(m/w):";

          ;xes>>nic? ? cout<<"年齡:";

         ;ega〉〉nic? }? };eman nruter{)(man gnirts? char se(){return sex;}

         int ag(){return age;} };

        。/ class technician: public employee

         //技術(shù)員類

        。 public:

          int worktime;

         ;1rebmun tni?public:

          void display1()

         {? ;":號編得員術(shù)技”<〈tuoc?? ? cin>〉number1;

          employee::display();

          cout<<”工作時間”;

         ? cin>>worktime;

        。

         };emitkrow nruter{)(emit tni? };1rebmun nruter{)(1bmun tni?};

          // class manager :

         public employee

         //經(jīng)理類 {protected:

         int number2;

          public:

         void display2()

         {

          ;”:號編得理經(jīng)"〈<tuoc? ;2rebmun>>nic??

         employee::display();

        。

         };2rebmun nruter{)(2bmun tni?};

         // class salesman : public employee

         //銷售員類

        。 protected:

          int total;

         int boss;

        。3rebmun tni?public:

        。3yalpsid diov? {?

         ;":號編得員售銷"〈<tuoc?

         ;3rebmun>〉nic?

         employee::display();

         cout<<"銷售額:";

          ;latot>>nic? ;”:號編得理經(jīng)售銷屬所"<<tuoc?? ? cin〉〉boss;

         }

         int hismanager(){return boss;}

        。唬靉tot nruter{)(euohsoaix tni? };3rebmun nruter{)(3bmun tni?};

         // class salesmanager : public manager

         //銷售經(jīng)理類 {protected:

          int number4; public:

         )(4yalpsid diov? {?

        。唬ⅲ禾柧幍美斫(jīng)售銷”<〈tuoc?

         cin>>number4;

          employee::display();

         }

          };4rebmun nruter{)(4bmun tni?};

         // void form()

        。 cout<<"★★小型公司工資管理系統(tǒng)★★"<<endl;

        。崾颈砀 cout<<"┌─────────────┐"〈<endl; cout〈<”│

          請選擇您所需得操作

          │"<<endl; cout〈<”│

          數(shù)據(jù)輸入:1,并按回車鍵 │"〈<endl; cout〈<"│

          數(shù)據(jù)統(tǒng)計:2,并按回車鍵 │"〈〈endl; cout〈<"│

          數(shù)據(jù)打印:3,并按回車鍵 │"〈<endl; cout<<”│

          數(shù)據(jù)備份:4,并按回車鍵 │"<<endl; cout〈<"│

          退出系統(tǒng):5,并按回車鍵 │"〈〈endl; cout〈<”└─────────────┘"〈〈endl; cout〈<"請選擇一個操作:"; } int main() { int i,j,k,g,m,all,t;

          char shuzi;

          int wage[N];

          technician t1[N];

          manager m1[N];

          salesman

         s1[2*N],s2[2*N];

          salesmanager sm1[N],f; for(t=1;;t++) {

         ;)(mrof? cin〉>shuzi;

         )izuhs(hctiws?

          {?case ’1’:{

          //功能 1

          for(i=0;i〈N;i++)

          t1[i]、display1(); cout<〈”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”<<endl;

          for(i=0;i〈N;i++)

          m1[i]、display2(); cout<<"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”<<endl;

          for(i=0;i<2*N;i++)

        。1[i]、display3(); cout<〈”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"〈〈endl;

        。鎜r(i=0;i〈N;i++)

         sm1[i]、display4(); cout<<”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"<〈endl;

         break;} case '2':

          //功能 2

        。++i;N<i;0=i(rof? {wage[i]=5000;all=0; ? cout 〈<"職工號為"<〈sm1[i]、numb4()<<”銷售經(jīng)理"〈<sm1[i]、nam()<<"下屬銷售員得業(yè)績?yōu)?"<〈endl;

         ;ldne〈〈”┐─────┬────┬─────┌”〈<tuoc?

         cout<<"│職工號

         │姓名

         │銷售額

         │"〈<endl;

        。++m;N*2<m;0=m(rof? {if(s1[m]、hismanager()==sm1[i]、numb4())

         ?{、]m[1s+lla=lla;))(euohsoaix、]m[1s(*500、0+]i[egaw=]i[egaw?xiaoshoue();

          ;ldne〈<”┤─────┼────┼─────├"<〈tuoc? )8(wtes <<”│"<〈)(3bmun、]m[1s<<)01(wtes〈〈"│"<<tuoc?

         <〈s1[m]、nam()〈<”│"〈〈setw(10)<<s1[m]、xiaoshoue()〈<"│”<〈endl;

         }}?

          cout<〈”├─────┼────┴─────┤”〈<endl;

          cout<<”│銷售額總計│"<〈setw(20)<<all<<”│"〈〈endl;

          cout〈〈”└─────┴──────────┘"<<endl;} for(j=0;j<N;j++)

          for(k=0;k<N-j;k++)

          if(wage[k]<wage[k+1])

         {t=wage[k];

         //冒泡

         wage[k]=wage[k+1];

         wage[k+1]=t;

         f=sm1[k];

         sm1[k]=sm1[k+1]; sm1[k+1]=f;} cout<〈”銷售經(jīng)理按工資排序為:”<<endl; cout〈〈"┌─────┬────┬────┬────┬────┐”<<endl; cout〈<”│職工號

         │姓名

         │性別

         │年齡

         │工資

         │"<<endl; for(g=0;g<N;g++)

         { cout〈〈”├─────┼────┼────┼────┼────┤”〈〈endl; cout<<"│"<〈setw(10)<<sm1[g]、numb4()〈〈"│”<<setw(8)<<sm1[g]、nam()<<”│"<<setw(8)〈<sm1[g]、se()〈<”│"<<setw(8)〈<sm1[g]、ag()<<"│"<<setw(8)<〈wage[g]<<"│"<<endl;

        。 cout〈〈”└─────┴────┴────┴────┴────┘"〈<endl;

         break ;

         //功能 3 case '3":

         cout<<”請等待、、、、、、、、、、、、"<<endl;

         ? cout<〈”職工基本情況一覽表如下"<〈endl;

         ;ldne<<”員術(shù)技"<<tuoc??

        。鉶ut<<"┌─────┬────┬────┬────┬────┐"<<endl;

          cout<<"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │"〈〈endl;

          for(i=0;i<N;i++)

         {?? "┤────┼────┼────┼────┼─────├"<<tuoc?〈〈endl;

         wtes〈<"│”〈〈)(1bmun、]i[1t〈〈)01(wtes〈<"│”<<tuoc?(8)<<t1[i]、nam()<〈"│"<<setw(8)〈<t1[i]、se()<〈”│"<<setw(8)<<t1[i]、ag()〈<"│”<〈setw(8)〈〈t1[i]、time()*100<<”│"<<endl;

          }? "┘────┴────┴────┴────┴─────└"〈〈tuoc?<<endl; //技術(shù)員表

          co u t <<"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"<<endl;

          ;ldne〈<"理經(jīng)”<〈tuoc?

         cout〈<”┌─────┬────┬────┬────┬────┐”<<endl;

          cout〈<"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │”<〈endl;

         for(i=0;i<N;i++)

          {?

         cout<<"├─────┼────┼────┼────┼────┤”<<endl;

         ? cout〈〈"│”<<setw(10)<<m1[i]、numb2()〈<”│”<〈setw(8)<<m1[i]、nam()<<"│"<〈setw(8)〈<m1[i]、se()〈〈"│"<<setw(8)<<m1[i]、ag()<〈"│"<<setw(8)<<"8000”〈<"│"<<endl; ?? ? }

         ? cout<<"└─────┴────┴────┴────┴────┘"<〈endl;

         //經(jīng)理表

          cou t〈<”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"<〈endl;

          cout<<”銷售經(jīng)理"〈<endl;

          cout〈<"┌─────┬────┬────┬────┬────┐"<<endl;

          cout<<”│職工號

         │姓名

         │性別

         │年齡

         │工資

         │”<<endl;

          for(g=0;g<N;g++)

          {?

         cout<<"├─────┼────┼────┼────┼────┤"〈<endl;

          cout〈<"│”<<setw(10)〈<sm1[g]、numb4()〈<"│”<〈setw(8)〈〈sm1[g]、nam()〈<"│"<<setw(8)〈〈sm1[g]、se()〈<"│”<<setw(8)〈<sm1[g]、ag()〈〈”│"〈<setw(8)<<wage[g]<〈”│”<〈endl;

          }

          cout<<"└─────┴────┴────┴────┴────┘"<<endl;

          c o u t <

         〈”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”<<endl;

          //銷售經(jīng)理表

         ? cout<〈"銷售員"<<endl;

          cout<〈"┌─────┬────┬────┬────┬────┬────────┐”<<endl;

          cout<<"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │所屬部門經(jīng)理編號│"<〈endl;

          for(i=0;i<(2*N);i++)

          { ──┼────┼────┼────┼────┼─────├”<〈tuoc??──────┤”〈〈endl;

          cout 〈<"│"<〈setw(10)<〈s1[i]、numb3()<〈"│” 〈<setw(8)

         〈〈s1[i]、nam()<<"│”<<setw(8)<<s1[i]、se()<<”│"<<setw(8)〈<s1[i]、ag()<<"│"<<setw(8)〈〈s1[i]、xiaoshoue()*0、04〈<"│"<〈setw(16)<〈s1[i]、hismanager()<<”│"<<endl;

          }

          cout〈〈”└─────┴────┴────┴────┴────┴────────┘"<〈endl;

         //經(jīng)理表

          cout<〈"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”〈<endl;

          break;

         case "4":

          ;ldne<<”份備據(jù)數(shù)”〈〈tuoc?

         out("E:\\sjq、txt",ios::in|ios::out|ios::trunc);

          outfile<〈”技術(shù)員”<<endl;

          outfile<<”┌─────┬────┬────┬────┬────┐"<<endl;

          outfile<〈"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │"〈〈endl;

          for(i=0;i<N;i++)

        。?? ────┼────┼────┼────┼─────├”<〈eliftuo?┤"<<endl;

         ? outfile<<"│"<<setw(10)<<t1[i]、numb1()<<”│”〈<setw(8)<〈t1[i]、nam()<〈"│"〈<setw(8)<〈t1[i]、se()〈〈”│"〈〈setw(8)<<t1[i]、ag()<<"│"<<setw(8)<<t1[i]、time()*100<<"│"<<endl;

          }

         ? outfile〈〈"└─────┴────┴────┴────┴────┘"<<endl; //技術(shù)員表

          ou t f i le<<”、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"〈<endl;

         ;ldne<<"理經(jīng)"<<eliftuo??

         outfile〈<"┌─────┬────┬────┬────┬────┐"〈<endl;

          outfile〈<"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │"<<endl;

          for(i=0;i<N;i++)

          {?”┤────┼────┼────┼────┼─────├"〈<eliftuo??<〈endl;

          outfile〈〈"│”〈<setw(10)〈<m1[i]、numb2()<<”│"<<setw(8)<<m1[i]、nam()〈<"│"〈<setw(8)<<m1[i]、se()<〈”│”〈<setw(8)<〈m1[i]、ag()<<"│”<〈setw(8)〈〈"8000”〈<"│"<<endl;

          }

          ───┴────┴────┴────┴─────└”〈<eliftuo?─┘”<<endl;

         //經(jīng)理表

         ? ou t fi l e〈〈"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”〈〈endl;

          ;ldne〈<"理經(jīng)售銷"〈<eliftuo?

         outfile〈<”┌─────┬────┬────┬────┬────┐”<〈endl;

          outfile<〈"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │"〈<endl;

          for(g=0;g<N;g++)

         {??

        。飖tfile<〈"├─────┼────┼────┼────┼────┤”<<endl;

          outfile〈<”│"<<setw(10)<<sm1[g]、numb4()<<"│”〈<setw(8)<〈sm1[g]、nam()〈〈"│"<〈setw(8)〈<sm1[g]、se()<〈”│"<<setw(8)〈<sm1[g]、ag()<<"│"<〈setw(8)<<wage[g]<<"│"<<endl;

         }??

         outfile<<"└─────┴────┴────┴────┴────┘"<<endl;

         ? o utfil e <〈"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、"<<endl;

          //銷售經(jīng)理表

         ;ldne<〈”員售銷"<<eliftuo??

         outfile<〈"┌─────┬────┬────┬────┬────┬────────┐”<<endl;

          outfile<<"│職工號

         │姓名

         │性別

         │年齡

         │工資

         │所屬部門經(jīng)理編號│"<〈endl;

        。妫飏(i=0;i〈(2*N);i++)

          {?──┼────┼────┼────┼────┼─────├"〈<eliftuo??──────┤"<<endl; )8(wtes<〈"│"<〈)(3bmun、]i[1s〈〈)01(wtes<<"│”<<eliftuo??<<s1[i]、nam()<<"│”<〈setw(8)〈<s1[i]、se()〈〈”│"〈<setw(8)<<s1[i]、ag()<〈”│"〈<setw(8)<<s1[i]、xiaoshoue()*0、04〈<”│"<〈setw(16)<<s1[i]、hismanager()<<"│"〈<endl;

          }? ? outfile〈〈”└─────┴────┴────┴────┴────┴────────┘"<<endl;

        。/經(jīng)理表

          out f i l e〈〈"、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、”〈<endl;

          out();

          break;

         case ’5":cout<〈"確定退出系統(tǒng)嗎?”<<endl;

         cout<〈"就是:1,

         否:2"〈〈endl;

          ;a tni???;a>〉nic?

          if(a==1) exit(5);break;

         default :cout<〈"error"<<endl; ?? ? } } return 0; }

         四、運行結(jié)果

         數(shù)據(jù)備份內(nèi)容……………………………………………、

         五、程序得使用說明

         1。從鍵盤輸入 1,按回車鍵,可進行各類數(shù)據(jù)得輸入,此步驟必須執(zhí)行; 2.從鍵盤輸入 2,按回車鍵,即可進行數(shù)據(jù)統(tǒng)計,得到統(tǒng)計列表; 3.從鍵盤輸入 3,按回車鍵,可打印出各類成員得基本信息; 4.從鍵盤輸入4,按回車鍵,可進行數(shù)據(jù)備份; 5.從鍵盤輸入5,按回車鍵,出現(xiàn)提示信息,若退出系統(tǒng)輸入 1 否則輸入 2. ? 六、總結(jié)及心得體會 從 9 月 2 號,我們開始了為期一周得C++程序設(shè)計實習(xí)——《小型工資管理系統(tǒng)》,每天下午去機房調(diào)試程序,上午編寫下一天得程序代碼。

         剛開始得時候,腦袋里一點思路都沒有,因為以前沒有接觸過這么大得程序。所以剛開始得時候,心里只有一個字能形容就就是怕。怕自己便不好,怕這門課程完成不了,很多很多。去做一件事情,最忌諱得就就是這一點.失敗者與成功者最大得區(qū)別就就是面對困難時得心態(tài),我深知這一點。所以,我沉下心來思考了很多。做一個程序,最重要得就就是大體思路,得有全局得思考,我承認,這一點我做得不就是很好,因為我第 2 天得程序做了大改動,也許就是我基本功不扎實,但就是我所能想到得就就是大改動了,可能有其她簡便得方法,所以這對于我而言,就是一個重大得警告.在第二天得晚上,我花了一晚得時間來重新整理思路,以防止在接下來得幾天里再出現(xiàn)那樣得錯誤,那就很讓人糾結(jié)了。第 1 天時完成數(shù)據(jù)得輸入以及類得設(shè)計。這個還不就是很難,就就是定義一個基類employee,然后派生下來幾個子類。然后在類內(nèi)編寫返回值得函數(shù),以及數(shù)據(jù)輸入得函數(shù)等等,數(shù)據(jù)成員都設(shè)置成 protected。在類外在編幾個數(shù)組,用來調(diào)用類內(nèi)函數(shù)。

         第 2 天就是完成數(shù)據(jù)統(tǒng)計,排序功能。排序得話用冒泡法,用數(shù)組進行數(shù)據(jù)得排序。但就是問題出現(xiàn)了,第一天我就是把輸入功能獨立變成一個 void 函數(shù)在主函數(shù)前面得,但就是我發(fā)現(xiàn)數(shù)據(jù)無法存儲下來.所以第2天我就把第一步得內(nèi)容全改了,搬到了類內(nèi),這樣才解決了問題。

         第三天時完成數(shù)據(jù)得輸出顯示,這個地方得難點就就是設(shè)計表格,這個就涉及到了那個輸入內(nèi)容寬度得設(shè)計,以及制表鍵盤得。然后數(shù)據(jù)得輸出就就是在主函數(shù)內(nèi)定義類對象數(shù)組,以此來實現(xiàn)數(shù)據(jù)得調(diào)用。

         然后剩下得就就是備份以及推出功能得實現(xiàn)了。這些都就是在網(wǎng)上查了相

         關(guān)資料然后學(xué)會如何編寫得,剛開始覺得很深奧,學(xué)了之后,就覺得,嗯,還行.所以其她得任務(wù)在半天內(nèi)就完成了。瞧著自己編出得程序,真心覺得一切都值了,很有成就感得樣子,我想這就就是編程員得歡喜吧。

         整個實習(xí)過程讓我明白了幾點:

         1.設(shè)計一個程序時需要從整體考慮,不能分散到最后結(jié)合不到一起; 2.有些貌似簡單得功能得實現(xiàn)其程序?qū)崿F(xiàn)不一定簡單,但也不能畏首畏尾,不敢嘗試,要勇于挑戰(zhàn)自己,相信自己一定可以; 1.需要具有刻苦鉆研得精神,注意總結(jié),遇到問題認真思考,力求得到結(jié)果; 2.同時也不能忽略團隊得力量,遇到實在個人解決不了得問題可以通過與同學(xué)商量解決,并且結(jié)合別人與自己得觀點,從多方面考慮,在眾多方案中找出最優(yōu)化得; 3.遇到一些問題時要有耐心進行更正,因為可能有時候一個很小得錯誤會導(dǎo)致整個程序運行失常。

         我感覺這一周得實習(xí)非常充實,謝謝這一周給我指導(dǎo)得老師,以及各位同學(xué)得陪伴。

        相關(guān)熱詞搜索:程序設(shè)計 實習(xí)報告

        版權(quán)所有 蒲公英文摘 smilezhuce.com