c++¿ÎÉ豨¸æ(ÏîÄ¿¹ÜÀíϵͳ) ÏÂÔØ±¾ÎÄ

1 ÐèÇó·ÖÎö

¸Ãϵͳ´¦ÀíÏîÄ¿µÄÏà¹ØÐÅÏ¢£¬ÏîÄ¿ÐÅÏ¢Ö÷Òª°üÀ¨£ºÏîÄ¿±àºÅ¡¢ÏîÄ¿Ãû³Æ¡¢µÈ¼¶¡¢¸ºÔðÈ˵ÈÄÚÈÝ£¬ÒªÇóʵÏÖÒÔϹ¦ÄÜ£º

£¨1£© ½¨Á¢ÏîÄ¿Àà¡£ £¨2£© ÏîÄ¿ÐÅÏ¢³õʼ»¯¡£

£¨3£© ÏîÄ¿ÐÅÏ¢µÄÌí¼Ó¡¢Ð޸ġ¢É¾³ý¡¢²éÕÒ¡£ £¨4£© ÏîÄ¿ÐÅÏ¢µÄÊä³ö¡£

£¨5£© ÔÚÏîÄ¿ÐÅÏ¢Öа´ÏîÄ¿±àºÅ¡¢ÏîÄ¿Ãû³ÆÅÅÐò¡£

Ëæ×ÅÐÅÏ¢»¯µÄÆÕ¼°Ò»¸öÆóÒµ°´´«Í³×ö·¨£¬É趨һ¸öÏîÄ¿ºó£¬²ÎÓëµÄ»áÓкܶಿÃÅ£¬±Ë´ËÐÅϢͳ¼ÆÐèҪ̫¶àʱ¼äÓ°ÏìЧÂÊ¡£ÏîÄ¿¹ÜÀíϵͳ¿É¶ÔÏîÄ¿µÄÈ«²¿¹¤×÷½øÐиßЧµÄ¹ÜÀí£¬±ãÓÚÏîÄ¿¾­Àí¶ÔÏîÄ¿ÐÅÏ¢½øÐÐÁÙʱµ÷ÕûºÍÐ޸ģ¬×ªÈëת³ö×ÊÁÏ¡¢ÖÆ×÷±¨±í¡¢¼ÆËãÔ¤ËãÖµ²¢¶Ôʱ¼äÀûÓᢳɱ¾¡¢ÈËÔ±·ÖÅä¡¢ÖÊÁ¿¡¢·çÏյĶàÖÖÒòËØ½øÐÐ×ۺϿ¼ÂÇ£¬Öƶ¨¼Æ»®´Ó¶ø³ä·ÖµÄʵÏÖ¸ßÔËӪЧÂÊ¡£ÏîÄ¿¹ÜÀíϵͳ»¹¿Éͬʱ´¦Àí¶à¸ö×ÓÏîÄ¿£¬¶ÔÏîĿʵʩ¸ú×ٺͼලÕ룬¶Ô¸÷ÖÖÇé¿ö×ö³ö¼ÙÉèÖÆ¶¨Ó¦¶Ô²ßÂÔÇÒÎļþÏîÄ¿µÄ±£Ã̶ܳȸߣ¬ÊµÓÃÐ͸ߡ£

2 Ëã·¨»ù±¾Ô­Àí

ÉèÓÐ4¸öÏîÄ¿·Ö±ðÊÇ£º

£¨1£©ÏîÄ¿±àºÅ£º8£»ÏîÄ¿Ãû³Æ£ºa£»ÏîÄ¿µÈ¼¶£º4¼¶£»¸ºÔðÈË£ºjohn£» £¨2£©ÏîÄ¿±àºÅ£º9£»ÏîÄ¿Ãû³Æ£ºb£»ÏîÄ¿µÈ¼¶£º3¼¶£»¸ºÔðÈË£ºlin£» £¨3£©ÏîÄ¿±àºÅ£º7£»ÏîÄ¿Ãû³Æ£ºc£»ÏîÄ¿µÈ¼¶£º6¼¶£»¸ºÔðÈË£ºsheng£» £¨4£©ÏîÄ¿±àºÅ£º4£»ÏîÄ¿Ãû³Æ£ºd£»ÏîÄ¿µÈ¼¶£º7¼¶£»¸ºÔðÈË£ºhong£» ´ËʱÐèÒªµÄ²Ù×÷Ϊ£º

£¨1£© ¼ÓÈëÏîÄ¿£º±àºÅ£º3£»Ãû³Æ£ºe£»µÈ¼¶£º2£»¸ºÔðÈË£ºming¡£ £¨2£© Ð޸ģºÐÞ¸ÄÏîÄ¿4¡£¡£ £¨3£© ²éÕҵȼ¶Îª2¼¶µÄÏîÄ¿¡£ £¨4£© ɾ³ýÏîÄ¿7

£¨5£© °´±àºÅºÍÃû³ÆÅÅÐò¡£

- 1 -

µÚÒ»²½£¬Ìí¼Ó¹ý³Ì¡£

ÔËÐÐÌí¼Ó³ÌÐò£¬ÊäÈ루±àºÅ£º3£»Ãû³Æ£ºe£»µÈ¼¶£º2£»¸ºÔðÈË£ºming¡££© »á½«ÏîÄ¿3¼ÓÈëÁÐ±í¡£´Ëʱ¹²ÓÐÎå¸öÏîÄ¿¡£ µÚ¶þ²½£¬Ð޸Ĺý³Ì¡£

ÔËÐÐÐ޸ijÌÐò£¬ÊäÈëÏîÄ¿±àºÅ£¨Èç4£©Ö®ºóÊäÈëеÄ4ºÅÏîÄ¿µÄÃû³Æ¡¢µÈ¼¶¡¢¸ºÔðÈ˵ÈÐÅÏ¢¡£

µÚÈý²½£¬²éÕÒ¹ý³Ì¡£

ÔËÐвéÕÒ³ÌÐò£¬ÊäÈë°´µÈ¼¶²éÕÒ£¬²éÕҵȼ¶Îª2µÄÏîÄ¿¡£Êä³ö½á¹ûΪ3ºÅÏîÄ¿¡£

µÚËIJ½£¬É¾³ý¹ý³Ì¡£

ÔËÐÐɾ³ý³ÌÐò£¬ÊäÈëɾ³ýÏîÄ¿µÄ±àºÅ£¨ÈçÊäÈë7£©»á½«7ºÅÏîĿɾ³ý´ËʱʣÓà4¸öÏîÄ¿¡£

µÚÎå²½£¬ÅÅÐò¹ý³Ì¡£

Ñ¡Ôñ°´±àºÅÅÅÐò£¬ÔòÊä³ö´ÎÐòΪ3ºÅ¡¢4ºÅ¡¢8ºÅ¡¢9ºÅ¡£

Ñ¡Ôñ°´Ãû³ÆÅÅÐò£¬ÔòÊä³ö´ÎÐòΪaÏîÄ¿¡¢bÏîÄ¿¡¢dÏîÄ¿¡¢eÏîÄ¿¡£

3 ÀàÉè¼Æ

´ÓËã·¨·ÖÎö¿ÉÒÔ¿´³ö£¬±¾Éè¼ÆÃæÁٵĹؼüÎÊÌâÊǶԸ÷¸öÏîÄ¿ÐÅÏ¢µÄÊäÈ룬ɾ³ý£¬Ð޸쬲éÕÒ¡£¿É¶¨ÒåÒ»¸öÏîÄ¿Ààproject¡¢Ò»¸öÐÂÊý¾ÝÀàRdata×÷Ϊ»ùÀࡣȻºóÓÉÏîÄ¿Àà¼Ì³Ð³öÌáÈ¡Ãû³Æ£¨getname£©¡¢ÌáÈ¡ÏîÄ¿×ÜÊý(gettag)¡¢ÌáÈ¡±àºÅ(getnumber)¡¢ÌáÈ¡¸ºÔðÈË(getcharge)¡¢ÌáÈ¡µÈ¼¶(getlevel)¡¢ÊäÈëÃû³ÆºÍ¸ºÔðÈË£¨setname£©¡¢ÊäÈë±àºÅºÍµÈ¼¶£¨setnum£©¡¢É¾³ýÀà(del)¡£ÅÉÉú³öÐ麯ÊýÌí¼ÓÏîÄ¿Àà(addproject)ºÍÊä³öÀà(output)¡£ÐÂÊý¾ÝÀàRdataÉùÃ÷Æä¹¹Ô캯Êý¡¢Êä³öº¯Êý(output)¡¢ÅÅÐòº¯Êý(sort)¡¢²Ù×÷º¯Êý(projectdate)¡¢ÖØÐ¶¨ÒåÏîÄ¿Ìí¼Óº¯Êý£¨addproject£©ºÍÎö¹¹º¯Êý£¨~RData£©¡£¶¨Òå³õʼ»¯º¯Êý£¨clear£©¡¢°´±àºÅ²éÕÒº¯Êý£¨equal£©¡£

ÆäÖУ¬ÏîÄ¿ÀàprojectÖеÄgetname¡¢gettag¡¢ getnumber¡¢getcharge¡¢getlevel¡¢setname¡¢setnum¸ºÔðÊäÈëºÍÌáÈ¡ÐÅÏ¢£¬del¸ºÔðɾ³ýÐÅÏ¢£¬ÅÉÉú³öµÄÐ麯Êýoutput¸ºÔð¶ÔÏîÄ¿ÐÅÏ¢µÄÊä³ö£¬addproject¸ºÔðÐÂÏîÄ¿µÄÌí¼Ó¡£ÐÂÊý¾ÝÀàRdataÀàÖеÄoutput¸ºÔð×îÖÕÐÅÏ¢µÄÊä³ö£¬sort¸ºÔð¶ÔÏîÄ¿ÐÅÏ¢µÄ°´Ãû³ÆÅÅÐòºÍ°´ÐòºÅÅÅÐò£¬projectdate¸ºÔð¶ÔÏîÄ¿ÐÅÏ¢½øÐÐÌí¼Ó¡¢É¾³ý¡¢Ð޸ġ¢²éÕҵȲÙ×÷¡£clear¸ºÔðÇå¿Õµ±Ç°µÄËùÓÐÐÅÏ¢£¬equal¸ºÔð°´±àºÅ²éÕÒÏîÄ¿£¬±»ÖØÐÂ

- 2 -

¶¨ÒåµÄaddproject¸ºÔðÌí¼ÓÏîÄ¿ÐÅÏ¢£¬Îö¹¹º¯ÊýÓÃÀ´ÊÍ·ÅÄÚ´æ¡£

4 ÏêϸÉè¼Æ

Õû¸ö³ÌÐò·ÖΪÈý¸ö¶ÀÁ¢µÄÎĵµ£¬projectÎļþÖаüÀ¨addproject¡¢del¡¢getcharge¡¢getleval¡¢getname¡¢getnumber¡¢gettag¡¢output¡¢project¡¢setname¡¢setnumµÄÉùÃ÷£¬RDataÎļþÖаüÀ¨addproject¡¢clear¡¢equal¡¢output¡¢projectdate¡¢RData¡¢~RData¡¢sortº¯ÊýµÄÉùÃ÷ÓÃÓÚ¾ßÌå²½ÖèµÄʵÏÖ¡£GlobalsÎļþ°üÀ¨³ÌÐòµÄÖ÷º¯Êý¡£

4.1 ÀàµÄ½Ó¿ÚÉè¼Æ

#include #include #include using namespace std; #define m 100 #define M 10

class project//»ùÀàprojectµÄÉùÃ÷ {

private:

int tag;//ÏîÄ¿×ÜÊý int number;//±àºÅ char name[15];//Ãû³Æ int leval;//µÈ¼¶ char charge[15];//¸ºÔðÈË project(){}//¹¹Ô캯Êý

char *getname()//ÌáÈ¡Ãû³Æº¯Êý¶¨Òå { }

int gettag()//ÌáÈ¡ÏîÄ¿×ÜÊýº¯Êý¶¨Òå {

- 3 -

public://Íⲿ½Ó¿Ú

return name;

};

}

return tag;

int getnumber()//ÌáÈ¡±àºÅÃû³Æº¯Êý¶¨Òå { }

char *getcharge()//ÌáÈ¡¸ºÔðÈ˺¯Êý¶¨Òå { }

int getleval()//ÌáÈ¡µÈ¼¶º¯Êý¶¨Òå { }

void setname(char *na,char*nb)//ÊäÈëÃû³ÆºÍ¸ºÔðÈ˺¯Êý¶¨Òå { }

void setnum(int a,int b)//ÊäÈë±àºÅºÍµÈ¼¶º¯Êý¶¨Òå { }

void del()//ɾ³ýº¯Êý¶¨Òå { }

virtual void addproject(int n,char *na,int nn,char *nb);//virtual void output();//¶ÁÈ¡ÏîÄ¿ÐÅÏ¢

tag=1; number=a; leval=b; strcpy(name,na); strcpy(charge,nb); return leval; return charge; return number;

Ð麯ÊýÓÃÓÚÌí¼ÓÏîÄ¿ÐÅÏ¢£¬

class RData//»ùÀàRdataÉùÃ÷ {

- 4 -