(Ñγǹ¤Ñ§ÔºÊý¾Ý½á¹¹¿Î³ÌÉè¼Æ·½°¸)Õ»µÄÓ¦Óñí´ïʽÇóÖµ ÏÂÔØ±¾ÎÄ

Õ»µÄÓ¦Ó㺱í´ïʽÇóÖµµÄÉè¼Æ

¼ÆËãºó׺±í´ïʽ½á¹û£¬½«½á¹ûÊä³öµ½¡±output.txt¡±ÎļþÖС£

4²âÊÔ·½·¨

Éè¼ÆÕë¶Ô³ÌÐòµÄinput.txtÎļþ£¬²¢½«ÔËÐнá¹ûÓëÆÚÍû²âÊÔ½øÐбȽϡ£

5 ³ÌÐòÔËÐÐЧ¹û 5.1 »ù±¾²âÊÔ£º

ÔÚinputÎļþÖÐÊäÈë±í´ïʽÈçÏÂͼ2£º ÔòÊä³ö½á¹ûÈçÏÂͼ3£º

ͼ2 ͼ3

ͼ4

5.2À©Õ¹²âÊÔ£º

ÔÚinputÎļþÖÐÊäÈë±í´ïʽÈçÏÂͼ5£º ÔòÊä³ö½á¹ûÈçÏÂͼ6£º

7

Õ»µÄÓ¦Ó㺱í´ïʽÇóÖµµÄÉè¼Æ

ͼ5 ͼ6

5.3ÈÝ´í²âÊÔ£º

ÔÚinputÎļþÖÐÊäÈë±í´ïʽÈçÏÂͼ7£º ÔòÊä³ö½á¹ûÈçÏÂͼ8£º

ͼ7 ͼ8

6 Éè¼ÆÐĵÃ

ͨ¹ý´Ë´ÎµÄ¿Î³ÌÉè¼Æ£¬¹®¹ÌºÍ¼ÓÉîÁËÎÒ¶ÔÕ»¡¢¶ÓÁС¢×Ö·û´®µÈÀíÂÛ֪ʶµÄÀí½â£»ÕÆÎÕÏÖʵ¸´ÔÓÎÊÌâµÄ·ÖÎö½¨Ä£ºÍ½â¾ö·½·¨£¨£»Ìá¸ßÀûÓüÆ

8

Õ»µÄÓ¦Ó㺱í´ïʽÇóÖµµÄÉè¼Æ

Ëã»ú·ÖÎö½â¾ö×ÛºÏÐÔʵ¼ÊÎÊÌâµÄ»ù±¾ÄÜÁ¦¡£

ÔÚϸ½ÚÎÊÌâµÄ·ÖÎöÉÏ£¬½ÏÒÔÍùÓÐÁ˺ܴóµÄÌá¸ß¡£ÔÚѰÇó×îÓŽâµÄÎÊÌâÉÏ£¬Ò²Äܹ»ÕÒµ½¶àÖÖ½â¾ö·½°¸À´Ê¹×Ô¼ºµÄ³ÌÐòÊÕ·Å×ÔÈç¡£È磬ÔÚ´¦ÀíʵÊýµÄÎÊÌâÉÏ£¬ÎÒ²ÉÓõÄÊÇÿȡµÃÒ»¸ö×Ö·û£¬¾ÍÁ¢¿Ì¶Ô´Ë×Ö·û½øÐд¦ÀíµÄ·½·¨¡£Æäʵ£¬ÎÒÃÇ¿ÉÒÔÓÃÒ»¸ö×Ö·ûÊý×飬À´´æ´¢Á¬½Ó×ŵÄһϵÁÐÊý×Ö×Ö·û£¬È»ºóÔÙͨ¹ýatofº¯Êý£¬Ö±½ÓµÃµ½×Ö·ûÊý×éÖÐËù´æ´¢µÄÊý×Ö¡£ÔÙÈ磬¶Ô¸ºÊýÎÊÌâµÄ´¦ÀíÉÏ£¬ÎÒ×î³õµÄÏë·¨ÊÇͨ¹ýÒ»¸ö±êÖ¾markÀ´¼ÇÂ¼Ç°ÃæµÄ×Ö·ûÊÇ·ñÊǸººÅ£¨»ò¼õºÅ£©£¬ÔÙÔÚºóÃæÈ¡µ½³ý·ûºÅÍâµÄÊý×Öʱ£¬Ñ¡ÔñÊÇ·ñÌí¼Ó¸ººÅ¡£ÁíÍ⣬ÓëÆäËûÈ˲»Í¬µÄÊÇ£¬ÔÚÎҵĿγÌÉè¼ÆÖУ¬Compare£¨£©º¯ÊýÓëÆäËûÓÐןܴóµÄÇø±ð¡£Í¨³£Çé¿öÏ£¬Í¬Ñ§ÃDzÎÕտα¾£¬¶¼»á²ÉÓÃÕ¼ÓÃ7*7=49¸ö¿Õ¼äµÄÊý×éÀ´·Ö±ð´æ´¢¶ÔÓ¦Á½¸ö×Ö·ûµÄÓÅÏȼ¶·ûºÅ£¬²¢¶ÔÁ½¸ö×Ö·û½øÐÐÔ¤ËãÖ®ºóµÃµ½Êý×éÖеÄλÖá£ËäÈ»7*7µÄÊý×éËùÕ¼µÄ¿Õ¼ä²¢²»ÊǷdz£´ó£¬µ«ÔÚÎÒ¿´À´ÕâÒ²ÊÇÒ»ÖÖÀË·Ñ£¬²¢ÇÒ¿Õ¼äµÄÀ˷Ѳ¢Ã»Óл»»ØÊ±¼äÒ»¶¨µÄ½ÚÊ¡¡£Òò´Ë£¬ÎÒ²ÉÓÃÁËÒ»ÖÖ³£¹æµÄ˼·¡£½«¸÷ÖÖÔËËã·û°´ÕÕÊýѧÂß¼­ÉϵÄÓÅÏÈ˳Ðò½øÐÐÅÅÐò£¬²¢µÃµ½Á½¸ö×Ö·ûÖ®¼äµÄÓÅÏȼ¶¹ØÏµ¡£ÕâÑùÒ»À´£¬ÎÒÃǽ«²»ÔÙÐèÒªÄÇ7*7µÄÊý×飬ÇÒʱ¼ä¸´ÔӶȲ¢²»´ó·ùÔöÕÇ¡£

ÔÚÕâ¸ö¿Î³ÌÉè¼ÆÖУ¬ÔËÓõ½µÄÊý¾Ý½á¹¹µÄ֪ʶÖ÷ÒªÊÇÕ»µÄ֪ʶ¡£Õ»ÔÚ¸÷ÖÖÈí¼þϵͳÖУ¬Ó¦Ó÷dz£¹ã·º¡£Õ»µÄµÄ´æ´¢ÌØÐÔ(LIFOÏȽøºó³ö)£¬Ê¹µÃÔÚÓÃÕ»À´±à³Ìʱ£¬Ë¼Â·ÇåÎúÃ÷ÁË¡£ÔÚʹÓõݹéË㷨ʱ£¬Õ»Ò²ÊÇÒ»ÖֺܺõÄÑ¡Ôñ¡£

´ËÍ⣬Õâ´ÎµÄ¿Î³ÌÉè¼Æ½øÒ»²½¼ÓÇ¿ÁËÎÒÃÇÔËÓÃCÓïÑÔ½øÐбà³Ì£¬µ÷ÊÔ£¬´¦ÀíÎÊÌâµÄÄÜÁ¦£¬¼ÓÉîÁËÎÒÃǶÔËã·¨¼°Êý¾Ý½á¹¹µÄÈÏʶ¡£Í¬Ê±ÎÒÒ²Òâʶµ½£¬¿ª·¢³ÌÐòµÄÔçÆÚ¼Æ»®Òª×öµÄ³ä·Ö£¬ÒÔÃâ³öÏÖ³ÌÐòÍê³Éºó·¢ÏÖ²»×ã¶ø´øÀ´µÄÐÞ¸ÄÂé·³¡£ËäÈ»ÕâÖ»ÊÇÒ»¸öССµÄÈí¼þ£¬µ«¶ÔÎÒÃÇÖ®ºóµÄÓ°ÏìȷʵºÜ´óµÄ¡£

9

Õ»µÄÓ¦Ó㺱í´ïʽÇóÖµµÄÉè¼Æ

7 ¸½£ºÔ´³ÌÐòÇåµ¥ #include #include #include int PrintError = 0;

/*È«¾Ö±äÁ¿£¬0´ú±íÕý³££¬1´ú±í±í´ïʽ³ö´í*/

/*charÀàÐÍÁ´±íʽ¶ÑÕ»£¬ÓÃÀ´´æ·ÅÔËËã·ûºÅ£¬ÒÔ¼°ÓÃÔÚÖÐ׺±í´ïʽת»»µÈʱºò*/ typedef struct Node *PtrToNode; typedef PtrToNode Stack; int IsEmpty(Stack S); void MakeEmpty(Stack S); void Push(char X,Stack S); char Top(Stack S); void Pop(Stack S);

typedef struct Node{ char Element; PtrToNode Next; };

/*floatÀàÐÍÁ´±íʽ¶ÑÕ»£¬ÓÃÀ´´æ·Å²Ù×÷Êý*/ typedef struct FNode *Ptr_Fn; typedef Ptr_Fn FStack; int FisEmpty(FStack S);

void FPush(float X,FStack S); float FTop(FStack S); void FPop(FStack S); typedef struct FNode{ float Element;

Ptr_Fn Next; };

void ConvertToPost(FILE *In, Stack Whereat,FILE *Temp); void Reverse(Stack Rev);

void Calculate(FILE *Change, Stack Whereat,FILE *Temp); /******Ö÷º¯Êý******/ int main() {

FILE *InputFile, *OutputFile,*Temp; /*³õʼ»¯±äÁ¿*/

10