#includestdio.h#includestdlib.h#includeconio.h#defineNULL0typedefintelemtype;typedefstructlinkedstacknode{elemtypedata;structlinkedstacknode*next;}linkedstacknode,*linkedstack;linkedstacktop;voidmenu();linkedstackinit_linkedstack();intlinkedstack_empty(linkedstacktop);intpush_linkedstack(linkedstacktop,elemtypex);intpop_linkedstack(linkedstacktop,elemtype*x);intgettop_linkedstack(linkedstacktop,elemtype*x);voidmain(){charcmd;inte,p,x,t,g;linkedstacktop;system(\"cls\");menu();while((cmd=getchar())!=\'#\'){switch(cmd){case\'1\':top=init_linkedstack();printf(\"\\nCreatingthelist!\\n\");printf(\"\\n\\n\\n\\t\\t\\tPleaseanykeytocontinue...\\n\");break;case\'2\':e=linkedstack_empty(top);if(e==1){printf(\"stackisempty\\n\");}else{printf(\"stackisnotempty\\n\");}printf(\"\\nInputingdata....\\n\");printf(\"\\n\\n\\n\\t\\t\\tPleaseanykeytocontinue...\\n\");break;case\'3\':printf(\"pleasepushthestackdata\\n\");scanf(\"%d\",while(x!=0){p=push_linkedstack(top,x);scanf(\"%d\",x);}printf(\"\\nCaculatingtheLengthofthelist...\\n\");printf(\"\\n\\n\\n\\t\\t\\tPleaseanykeytocontinue...\\n\");break;case\'4\':t=pop_linkedstack(top,if(t==1){printf(\"thetopstackdatais%d\\n\",x);}else{printf(\"error\\n\");}printf(\"\\nInsertingthedataintothelist!\\n\");printf(\"\\n\\n\\n\\t\\t\\tPleaseanykeytocontinue...\\n\");break;case\'5\':g=gettop_linkedstack(top,if(g==1){printf(\"thetopdatais%d\\n\",x);}else{printf(\"error\\n\");}printf(\"\\nDeletingthedatainthelist......\\n\");printf(\"\\n\\n\\n\\t\\t\\tPleaseanykeytocontinue...\\n\");break;}getch();system(\"pause!\");menu();}}voidmenu(){system(\"cls\");printf(\"\\t\\t1-init_linkedstack\\n\");printf(\"\\t\\t2-linkedstack_empty\\n\");printf(\"\\t\\t3-push_linkstack\\n\");printf(\"\\t\\t4-pop_linkedstack\\n\");printf(\"\\t\\t5-gettop_linkedstack\\n\");printf(\"\\t\\t#-quit\\n\");printf(\"Pleaseselect:\");}linkedstackinit_linkedstack(){linkedstacktop=(linkedstacknode*)malloc(sizeof(linkedstacknode));top-next=NULL;returntop;}intlinkedstack_empty(linkedstacktop){if(top-next==NULL){return1;}else{return0;}}intpush_linkedstack(linkedstacktop,elemtypex){linkedstacknode*node;node=(linkedstacknode*)malloc(sizeof(linkedstacknode));if(node==NULL){printf(\"error\\n\");return0;}else{node-data=x;node-next=top-next;top-next=node;return1;}}///////////////////////////////////////////////////intpop_linkedstack(linkedstacktop,elemtype*x){linkedstacknode*node;node=(linkedstacknode*)malloc(sizeof(linkedstacknode));if(top-next==NULL){printf(\"error\\n\");return0;}else{node=top-next;*x=node-data;top-next=node-next;free(node);return1;}}////////////////////////////////////////////////////////intgettop_linkedstack(linkedstacktop,elemtype*x){if(top-next==NULL){printf(\"error\\n\");return0;}else{*x=top-next-data;return1;}}追问高人啊,能不能告诉我你改那里了?我想知道自己错那了,我可以给你分的,QQ574258039求平时可以帮帮我,谢谢了。拜师!!!
|