留学问答

用c语言的栈来编写逆波兰公式的程序

提问:符佳亲   分类:出国留学
优质回答

符佳亲

如题,代码如下,欢迎探讨!!![code=C/C++][/code]#include typedef int ElemType; #define MAXNUM 16struct stack{ElemType data[MAXNUM];int top;};void StackInit(struct stack *stack){int i = 0;for(;i< MAXNUM;i++){stack->data[i] = 0;}stack->top = 0; }void StackPush(struct stack *stack,ElemType c){if(MAXNUM == stack->top) {printf("The stack is full ");return;}stack->data[stack->top++] = c;}ElemType StackPop(struct stack *stack){if(0 == stack->top){printf("The stack is empty "); }int ChangeToPostfix(char *str){int i = 0,flag = 0; int c,ch;struct stack ch_stack;struct stack op_stack;StackInit(&ch_stack);StackInit(&op_stack);while( != (c = *(str + i))) {if((* == c) || (/ == c) || (( == c)){flag = 0;StackPush(&op_stack,c);}else if() == c){flag = 0;while(( != (c = StackPop(&op_stack))){StackPush(&ch_stack,c);}if(0 == op_stack.top){printf("the ( hasnt found when the ) come in! ");return -1;}}else if((+ == c)|| (- == c)){flag = 0;if(0 != op_stack.top) { while(( != (ch = StackPop(&op_stack))){StackPush(&ch_stack,ch);if(0 == op_stack.top){break;}}}StackPush(&op_stack,c);}else if((c >= 0) && (c

当然了,看完上述的分析觉得还不够尽兴的话,也可以再看看大家大盈之家2.0养老年金险的收益评测,再下投保结论:

全网同号:留学查一查,欢迎搜索!


花更少的钱,买对的留学

为你寻找性价比最高的产品

热点问题

最新问题

留学问题标签

美国留学中介
出国留学申请
加拿大留学中介
澳洲留学中介
英国留学中介

请关注留学查一查公众号
咨询客服为您进行顾问预约登记


点击微信 -> 发现 -> 扫一扫
扫描上方二维码进行关注