程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言問答 >> c語言de編程題目 急!!!!!

c語言de編程題目 急!!!!!

編輯:C語言問答

c語言de編程題目 急!!!!!

100

編一個程序  要求打入一個表格

       學號   姓名  專業  英語 高數 C語言

A01                   網絡

A02                   網絡

A03                    網絡

A04                   網絡

A05                    網絡

B01                    會計

B02                    會計      

B03                     會計

B04                    會計

B05                      會計

中間的學號 名字和分數都自己想 無所謂       關鍵是還要求出每個學生的平均分 以及 每個專業每科的平均分

最佳回答:

#include <iostream>
#include<string>
using namespace std;
struct pe
{
 string SN;//學號
 string N;//姓名
 string S;//專業
 short Ep;//英語成績
 short ACp;//高數成績
 short Cp;//c語言成績
 float avg;//3科的平均成績
};
class table
{
public:
 const static short tsize=3;//表大小
 struct pe p[tsize];
 table(){};
 void input()
 {
  short i;
  for(i=0;i!=tsize;++i)
  {
   cin>>p[i].SN>>p[i].N>>p[i].S>>p[i].Ep>>p[i].ACp>>p[i].Cp;
   p[i].avg=(float)(p[i].Ep+p[i].ACp+p[i].Cp)/3;
  }
 }
 float cavg(string S,string sub)//S為專業名,sub為科目,計算S專業sub科目的平均成績,輸出為-1則為沒有輸入專業的學生
 {
  short i;
  float avg=0;
  short number=0;
  for(i=0;i!=tsize;++i)
  {
   if(p[i].S==S)
   {
    if(sub=="E")//根據輸入的修改
     avg+=p[i].Ep;
    if(sub=="C")
     avg+=p[i].Cp;
    if(sub=="AC")
     avg+=p[i].ACp;
    ++number;
   }
  }
  if(number==0)
   return -1;//表中沒有輸入的專業
  else
   return avg/number;
 }
};
int main()
{
 class table t;
 t.input();
 cout<<t.cavg("~","E")<<endl;//參數根據輸入的數據修改
 short i;
 cin>>i;
 return 0;
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved