ngzsq17 ngzsq17
记得我们也曾活过
关注数: 13 粉丝数: 75 发帖数: 4,164 关注贴吧数: 32
C++编写的学生成绩管理程序 #include #include #include #include using namespace std;class CData{public:CData(){};virtual int comparename(CData &) =0;virtual void show()=0;virtual ~CData(){};};class CNode{public:CNode(){pdata=0;pnext=0;}CNode(CNode &n);void inputdata(CData *pd){pdata=pd;}void shownode(){pdata->show();}CData *getdata(){return pdata;}friend class CList;private:CData *pdata;CNode *pnext;};CNode::CNode(CNode &n){pdata=n.pdata;pnext=n.pnext;} class CList{public:CList(){phead=0;}~CList(){deletelist();}void addnode(CNode *pnode);void deletelist();CNode *deletenode(CNode *pnode);CNode *lookup(CData &data);CNode *getlisthead(){return phead;}void showlist();CNode *getnext(CNode *pnode);private:CNode * phead;};void CList::addnode(CNode *pnode){if(phead==0){phead=pnode;pnode->pnext=0;return;}else{pnode->pnext=phead;phead=pnode;}}void CList::deletelist(){CNode *p1,*p2;p1=phead;while(p1){delete p1->pdata;p2=p1;p1=p1->pnext;delete p2;}}CNode *CList::deletenode(CNode *pnode){CNode *p1,*p2; p1=phead;while(p1!=pnode&&p1->pnext!=0){p2=p1;p1=p1->pnext;}if(p1==phead){phead=phead->pnext;return pnode;}p2->pnext=p1->pnext;return pnode;}CNode *CList::lookup(CData &data){CNode *p1=phead;while(p1){if(p1->pdata->comparename(data)==0)return p1; p1=p1->pnext; }return 0;}void CList::showlist(){if(phead==0)cout<<"对不起,没有任何记录.\n";else{CNode *p=phead; while(p){ p->pdata->show(); p=p->pnext;}}}CNode *CList::getnext(CNode *pnode){CNode *p=pnode;p=p->pnext; return p;}class Student:public CData{private:char s_class[17];char s_num[17];char s_name[17];double ele_technique;double c_program;double mul_technique; double col_english;double sen_math;double col_gym;double marx_economy;double average;public: Student();virtual int comparename(CData &);void show();void set(char *c,char*n,char *nam,double e,double cp,double m,double ce,double sm,double cg,double mar,double aver);};Student::Student(){strcpy(s_class,"\0");strcpy(s_num,"\0");strcpy(s_name,"\0");ele_technique=0;c_program=0;mul_technique=0;col_english=0;sen_math=0;col_gym=0;marx_economy=0;}int Student::comparename(CData &data){Student &temp=(Student &)data;return strcmp(s_name,temp.s_name);}void Student::show(){cout<
C++编写的21点程序~ #include #include #include using namespace std;class pai{ public: pai(); //构造函数 void beginpai(); //获得头张牌 void getpai(); //要牌 void rule(); //游戏规则 void getppai(); //返回一张牌的点数 int getnumber(); //返回牌的号码:即第几张牌 char gethuase(); //返回一张牌的花色 float total(); //返回牌面点数:即总的点数 void print(); //输出打牌的局数的信息 void pwin(); //计算赢的局数 void pfail(); //计算输的局数 void pdraw(); //计算和局的局数 void gettotal(); //输出该局玩家和电脑得牌的信息 private: int ppai[7]; //存牌的数组 int huase[7]; //花色的数组 int number; //牌的总数 int win; //赢的局数 int fail; //输的局数 int draw; //和局的局数};pai::pai() //构造函数:初始化数据{number=0;win=0;fail=0;draw=0;}void pai::rule() //游戏规则 {cout<<" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";cout<<" welcome to 21点 game~!\n";cout<<" game rules:\n";cout<<" 1.玩家最多可以拿7张牌牌;\n";cout<<" 2.如果点数大于21点就会爆点;\n";cout<<" 3.如果电脑的点数大于17点,电脑将不会要牌;\n";cout<<" 4.如果玩家的点数大于21点时点,玩家将不能再要牌;\n";cout<<" 5.当牌中出现A时,按11点计算,如果总点数大于21点则按1点计算;\n";cout<<" 6.J、Q、K按10点计算,一方出现爆点则判爆点者输;\n";cout<<" 7.如果玩家和电脑同时爆点或者点数相同系统判定为和局!\n";cout<<" 8.good luck to you!"<
1 下一页