<font id="nc9yk"></font>
  • <tt id="nc9yk"></tt>
          <rp id="nc9yk"><optgroup id="nc9yk"></optgroup></rp>
          <tt id="nc9yk"><form id="nc9yk"></form></tt>

            <cite id="nc9yk"></cite>

            C++課程設計之學生成績管理系統

             更新時間:2020年12月29日 11:34:27   作者:chaoyue66  
            這篇文章主要為大家詳細介紹了C++課程設計之學生成績管理系統,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

            本文實例為大家分享了C++學生成績管理系統的具體代碼,供大家參考,具體內容如下

            /*要求:設立程序管理學生如下信息:學生學號、姓名、班級,語文、數學、英語成績。
             至少要有10名以上學生。
            能夠實現根據以下關鍵字查詢:學生姓名 、學號、班級、課程名稱。
              能夠實現按照單科成績、總成績、平均成績、學號排序。
              能夠實現學生信息的插入、刪除和修改。
            能夠查詢每個課程的最高分、最低分及相應學生姓名、班級和學號。
            能夠查詢每個班級某門課程的優秀率(90分及以上)、不及格率,并進行排序。*/
            #include<iostream>
            #include<iomanip>
            #include<string>
            using namespace std;
            class student
            {
             int num;
             char name[20];
             char class1[20];
             double chinese;
             double math;
             double english;
             double youxiu;//優秀率
             double bujige;//不及格率
             double sum;//總成績
             double aver1;//平均成績
             
            public:
             void set()
             {
             
             cout<<"\t學生學號:";
             cin>>num;
             cout<<"\t學生姓名:";
             cin>>name;
              cout<<"\t學生班級:";
             cin>>class1;
             cout<<"\t語文成績:";
             cin>>chinese;
             cout<<"\t英語成績:";
             cin>>english;
             cout<<"\t數學成績:";
             cin>>math;
             }
             void show()
             {
             cout<<"該學生的學號:"<<num<<endl;
             cout<<"該學生的姓名:"<<name<<endl;
             cout<<"該學生的班級:"<<class1<<endl;
             cout<<"該學生的語文成績:"<<chinese<<endl;
             cout<<"該學生的數學成績:"<<math<<endl;
             cout<<"該學生的英語成績:"<<english<<endl;
             }
             double ad(){return sum=chinese+english+math;}
             double aver()
             {
             aver1=(chinese+english+math)/3;
             return aver1;
             }
             friend void show();
             friend void search(); 
             friend void change(); 
             friend void add(); 
             friend void paixu();
             friend void del(); 
             
            };
             void input();
             void show();
             void search(); 
             void change(); 
             void add(); 
             void paixu();
             void del(); 
             student s[100];
             int n=0;
             
            int main()
            {
             
             int select; 
             while(1)
             {
             system("cls");
             cout<<"\t ******************歡迎使用******************\n";
             cout<<"\t **************學生成績管理系統**************\n";
             cout<<"\t *------------------------------------------*\n";
             cout<<"\t *   1——錄入學生信息    *\n";
             cout<<"\t *   2——顯示學生信息    *\n";
             cout<<"\t *   3——查詢學生信息    *\n";
             cout<<"\t *   4——修改學生信息    *\n";
             cout<<"\t *   5——添加學生信息    *\n";
             cout<<"\t *   6——排序學生信息    *\n";
             cout<<"\t *   7——刪除學生信息    *\n";
             cout<<"\t *   0——退出      *\n";
             cout<<"\t *------------------------------------------*\n";
             cout<<"\t 你要輸入的編號是(0--7):";
             cin>>select;
             if(select==0) break;
             switch(select){
             case 1:
             input(); //調用input函數錄入數據
             system("pause");
             break;
             case 2:
             show(); //調用show函數顯示學生信息 
             system("pause");
             break;
             case 3:
              search(); //調用search函數查詢學生信息
             system("pause");
             break;
             case 4:
             change(); //調用change函數修改學生信息
             system("pause");
             break;
             case 5:
              add();  //調用add函數添加學生信息
             system("pause");
             break;
             case 6:
              paixu();  //調用add函數添加學生信息
             system("pause");
             break;
             case 7:
             del(); // 調用del函數刪除學生信息
             system("pause");
             break;
             
             
             
             system("pause");
             default:
             cout<<"沒有此選項,請重新選擇!"<<endl;
             }
             }
             return 0;
            }
             void input() //錄入學生信息的函數
            {
             char sel;
             do
             {
             n++;
             cout<<"\t請輸入第"<<n<<"個學生信息:\t"<<endl;
              s[n].set();
             cout<<"是否要繼續錄入學生信息(Y/N):";
             cin>>sel;
             }while(sel=='Y' || sel=='y' ); 
            }
            void show()
            {
             cout<<left; //設置輸出左對齊
             cout<<setw(10)<<"學生學號"
             <<setw(10)<<"學生姓名"
             <<setw(13)<<"學生班級"
             <<setw(12)<<"語文成績"
             <<setw(12)<<"數學成績"
             <<setw(12)<<"英語成績"
             <<endl;
             for(int i=1;i<=n;i++)
             {
             cout<<setw(10)<<s[i].num
             <<setw(10)<<s[i].name
             <<setw(13)<<s[i].class1
             <<setw(12)<<s[i].chinese
             <<setw(12)<<s[i].math
             <<setw(12)<<s[i].english<<endl;
             }
             cout<<endl;
             
            }
             
            void search()//查詢
            { 
             
             int a,b,i;char c[20];
             cout<<"請選擇查詢方式:"<<endl;
             cout<<"按學生姓名查詢請按1"<<endl;
             cout<<"按學生學號查詢請按2"<<endl;
             cin>>a;
             switch(a)
             {
             case 1: 
            {char sel;
             do{
             cout<<"請輸入你要查的學生的姓名:"<<endl;
             cin>>c;
             for(i=1;i<=n;i++)
             if(strcmp(s[i].name,c)==0)
             {cout<<"你要查的學生信息為:"<<endl;
             cout<<"學生學號:"<<s[i].num<<endl<<"學生姓名:"
             <<s[i].name<<endl<<"學生班級:"
             <<s[i].class1<<endl<<"語文成績:"
             <<s[i].chinese<<endl<<"數學成績:"
             <<s[i].math<<endl<<"英語成績:"
             <<s[i].english<<endl;
             break;
             }
             else if(strcmp(s[i].name,c)!=0&&i==n)
             {cout<<"沒有這個學生!"<<endl;break;}
             cout<<"是否要繼續查詢學生信息(Y/N):";
             cin>>sel;
             }while(sel=='Y' || sel=='y' ); 
             break;
            }
             case 2:
            { char sel;
             do{
             cout<<"請輸入你要查的學生的學號:"<<endl;
             cin>>b;
             for(i=1;i<=n;i++)
             if(s[i].num==b)
             {
             cout<<"你要查的學生信息為:"<<endl;
             cout<<"學生學號:"<<s[i].num<<endl<<"學生姓名:"
             <<s[i].name<<endl<<"學生班級:"
             <<s[i].class1<<endl<<"語文成績:"
             <<s[i].chinese<<endl<<"數學成績:"
             <<s[i].math<<endl<<"英語成績:"
             <<s[i].english<<endl;
             break;
             }
             else if(s[i].num!=b&&i==n)
             {cout<<"沒有這個學生!請核對后再輸入!"<<endl;break;}
             cout<<"是否要繼續查詢學生信息(Y/N):";
             cin>>sel;
             }while(sel=='Y' || sel=='y' ); 
             break;}
             
             default:
             cout<<"您的輸入有誤!"<<endl;
             }
             
            }
             
            void change()
            {
             { char sel;
             int d,i,e,f,g=0;
             do{
             cout<<"請輸入你要修改的學生的學號:"<<endl;
             cin>>d;
             for(i=1;i<=n;i++)
              if(s[i].num==d)
             {
             cout<<"你要修改的學生信息為:"<<endl;
             cout<<"學生學號:"<<s[i].num<<endl<<"學生姓名:"
             <<s[i].name<<endl<<"學生班級:"
             <<s[i].class1<<endl<<"語文成績:"
             <<s[i].chinese<<endl<<"數學成績:"
             <<s[i].math<<endl<<"英語成績:"
             <<s[i].english<<endl;
                e=1;
             break;
             }
             else if(s[i].num!=d&&i==n)
             {cout<<"沒有這個學生!請核對后再輸入!"<<endl;
             e=0;break;}
             while(e==1)
             { {cout<<"請輸入該學生要修改的信息對應的數字:"<<endl;
             cout<<"學生學號:1"
             <<'\t'<<"學生姓名:2"
             <<'\t'<<"學生班級:3"
             <<'\t'<<"語文成績:4"
             <<'\t'<<"數學成績:5"
             <<'\t'<<"英語成績:6"<<endl;
             }
             cin>>f;
             switch(f)
             {case 1:cout<<"\t新的學生學號為:";
               cin>>s[i].num;break;
               case 2:cout<<"\t新的學生姓名為:";
               cin>>s[i].name;break;
               case 3:cout<<"\t新的學生班級為:";
               cin>>s[i].class1;break;
               case 4:cout<<"\t新的語文成績為:";
               cin>>s[i].chinese;break;
               case 5:cout<<"\t新的數學成績為:";
             cin>>s[i].math;break;
              case 6:cout<<"\t新的英語成績為:";
             cin>>s[i].english;break;
             default:cout<<"您的輸入有誤,請重新輸入!";
             cin>>f;}
              e=0;
             g=1;
             }
             if(g==1)
             { cout<<"修改成功!";}
             cout<<"是否要繼續修改學生信息(Y/N):";
             cin>>sel;
             }while(sel=='Y' || sel=='y' ); 
             }
             
            }
             
            void add()
            {
            char sel;
             do
             {
             n++;
             cout<<"\n請輸入第"<< n <<"個學生信息:\n";
             cout<<"\t學生學號:";
             cin>>s[n].num;
             cout<<"\t學生姓名:";
             cin>>s[n].name;
              cout<<"\t學生班級:";
             cin>>s[n].class1;
             cout<<"\t語文成績:";
             cin>>s[n].chinese;
             cout<<"\t數學成績:";
             cin>>s[n].math;
             cout<<"\t英語成績:";
             cin>>s[n].english;
             cout<<"是否要繼續添加學生信息(Y/N):";
             cin>>sel;
             }while(sel=='Y' || sel=='y' ); 
             
            }
             
             
            void paixu()
            {
             int a;
             cout<<"請選擇排序方式:"<<endl;
             cout<<"1.按學號排序;"<<endl
             <<"2.按總成績排序;"<<endl
             <<"3.按平均成績排序;"<<endl;
             cin>>a;
             switch(a)
             {
             case 1:
             {int t=0;
             for(int i=0;i<n-1;i++)
             for(int j=0;j<n-i;j++)
             if(s[j].num>s[j+1].num)
             { t=s[j].num;
              s[j].num=s[j+1].num;
             s[j+1].num=t;}
             
              cout<<"按學號排序結果:"<<endl;
             cout<<left; //設置輸出左對齊
             cout<<setw(10)<<"學生學號"
             <<setw(10)<<"學生姓名"
             <<setw(13)<<"學生班級"
             <<setw(12)<<"語文成績"
             <<setw(12)<<"數學成績"
             <<setw(12)<<"英語成績"
             <<endl;
             for(i=1;i<=n;i++)
             { cout<<setw(10)<<s[i].num
             <<setw(10)<<s[i].name
             <<setw(13)<<s[i].class1
             <<setw(12)<<s[i].chinese
             <<setw(12)<<s[i].math
             <<setw(12)<<s[i].english<<endl;}
             }
             break;
             
            /* case 2:
             {double t;
             for(int i=0;i<n-1;i++)
             { for(int j=0;j>n-i-1;j++)
             {
             if(s[j].sum>s[j+1].sum)
             t=s[j].sum; s[j].sum=s[j+1].sum; s[j+1].sum=t;
             } 
             }
              cout<<"按總成績排序結果:"<<endl;
             for(i=1;i<=n;i++)
              cout<<"學號:"<<s[i].num<<"\t"<<"姓名:"<<s[i].name<<"\t"<<"班級:"<<s[i].class1<<"\t"
              <<"語文成績:"<<s[i].chinese<<"\t"<<"數學成績:"<<s[i].math<<"\t"<<"英語成績"<<s[i].english<<"\t總成績"<<s[i]sum<<endl;
              cout<<endl;
             }
             break;*/
             
            /* case 3:
             int t;
             for(int i=0;i<n-1;i++)
             { for(int j=0;j>n-1-i;j++)
             {
             if(s[j].aver()>s[j+1].aver())
             t=s[j].aver(); s[j].aver()=s[j+1].aver(); s[j+1].aver()=t;
             } 
             }
              cout<<"按平均成績排序結果:"<<endl;
             for(i=0;i<n;i++)
              cout<<"學號:"<<s[i].num<<"\t"<<"姓名:"<<s[i].name<<"\t"<<"班級:"<<s[i].class1<<"\t"
              <<"語文成績:"<<s[i].chinese<<"\t"<<"數學成績:"<<s[i].math<<"英語成績"<<s[i].english<<endl;
              cout<<endl;
             }
             break ;
            */
             
             default:
             {cout<<"您的輸入有誤!請重新輸入!"<<endl;
             cin>>a;}
             }
             
            }
             void del()
            {
             
             int j,i,k;char c[10],sel,y;
             do{
             cout<<"請輸入你要刪除的學生的姓名:"<<endl;
             cin>>c;
             for(i=1;i<=n;i++)
             if(strcmp(s[i].name,c)==0)
             {cout<<"你要刪除的學生信息為:"<<endl;
             cout<<"學生學號:"<<s[i].num<<endl
             <<"學生姓名:"<<s[i].name<<endl
             <<"學生班級:"<<s[i].class1<<endl
             <<"語文成績:"<<s[i].chinese<<endl
             <<"數學成績:"<<s[i].math<<endl
             <<"英語成績:"<<s[i].english<<endl;
             cout<<"確認刪除?(y/n):";
             cin>>y;
             if(y=='Y'||y=='y')
             {
             for(j=i;j<=n+1;j++)
             {
              s[j]=s[j+1];
             } k=1;
             }
             else 
             cout<<"刪除失敗!"<<endl;
             
             
             break;
             }
             else if(strcmp(s[i].name,c)!=0&&i==n)
             {cout<<"沒有這個學生!請核對后再輸入!"<<endl;
             k=0;break;}
             while(k==1)
             {
             if(y=='Y'||y=='y')
             cout<<"刪除成功!";
             n--;
             k=0;
             }
             cout<<"是否要繼續刪除學生信息(Y/N):";
             cin>>sel;
             
             }while(sel=='Y' || sel=='y' ); 
             
            }

            效果圖:

            以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

            相關文章

            最新評論

            hao500彩票 www.xbcncp.com:北流市| www.motoclubprimeur.org:合肥市| www.helioshs.com:佛学| www.ptcdw.cn:黄浦区| www.jardinestrosset.com:嘉兴市| www.mlshgs.com:来安县| www.xunxi360.com:呼图壁县| www.didacticosedima.com:永安市| www.slgdw.cn:道孚县| www.achetervigrxplus.com:福清市| www.glitznglow.com:油尖旺区| www.szcompro.com:张家港市| www.rordsm.com:隆昌县| www.tjszdec.com:昌江| www.ymzhby.com:土默特左旗| www.stevebayer.com:东阿县| www.yaonvguan.com:资阳市| www.potap-nastya.net:米脂县| www.090633.com:米脂县| www.trinhtuyetlinh.com:民丰县| www.s3552.com:东莞市| www.rush-it.com:桂东县| www.lts-portal.org:辉县市| www.hg39789.com:海兴县| www.sclxss.com:浦北县| www.buycartierwatches.com:上林县| www.bloghomedepot.com:临海市| www.zhongyifeedtrade.com:德清县| www.racetorecoverynow.org:盐山县| www.mmm522.com:广丰县| www.steven-z.com:新闻| www.klifang.com:阳城县| www.szjiaoyuzhan.com:龙泉市| www.m8389.com:夏邑县| www.bmnjn.com:温宿县| www.higlobee.com:甘南县| www.aloeveramedicine.com:五指山市| www.foxbreaks.com:峨山| www.gxsgx.com:崇左市| www.f5696.com:泰和县| www.847602.com:雷州市| www.xpflw.cn:潮安县| www.jybncm.com:蕉岭县| www.evbpower.com:宿州市| www.myoldagehome.com:定州市| www.49website.com:昭通市| www.abtqq.com:抚顺市| www.david-bird.com:比如县| www.joabiz.com:长汀县| www.madinafrica.com:龙岩市| www.cafeconsolas.com:共和县| www.earmaps.com:惠安县| www.leonardhaleyelectric.com:石家庄市| www.gjbnc.cn:牙克石市| www.131716.com:白玉县| www.012559.com:镇安县| www.competitorurl.com:休宁县| www.abitiusati.net:抚州市| www.newclassicsingers.org:九寨沟县| www.hayatatutun.com:攀枝花市| www.phldb.com:崇左市| www.redmarked.com:都兰县| www.5i7du.com:芷江| www.cg955.com:罗平县| www.diendankientruc.net:本溪市| www.ovomasturbador.com:门头沟区| www.outaohui.com:台中县| www.zjgyuantong.com:乌鲁木齐县| www.pj558888.com:吴忠市| www.telepoisson.com:随州市| www.allsmsfree.com:深泽县| www.zhgtymodel.com:洛浦县| www.yjxsfz.com:和平县| www.white-label-host.com:无锡市| www.coolvier.com:吴堡县| www.am9900.com:岳池县| www.dcgrill18st.com:阿合奇县| www.unirci.com:冀州市| www.180xu.com:济阳县| www.blueflagfarm.com:公安县| www.sunfar001.com:思南县| www.truboot.com:望谟县| www.guccibagsfactory.com:崇文区| www.ccadgc.com:巫溪县|