码迷,mamicode.com
首页 > 编程语言 > 详细

中缀转后缀的数组实现(只有加减乘除

时间:2016-04-10 14:07:31      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

#include <stdio.h>
int youxian(char a)
{
	if(a==‘+‘||a==‘-‘)
	return 1;
	if(a==‘*‘||a==‘%‘)
	return 2;
}
int main(void)
        {
        	char stack[20];
        	int jishu=0;
        	char b;
        	
        	while((b=getchar())!=‘\n‘)
			    {
        		  if(b>=33&&b<=47)
        		    {   
        		    	if(jishu==0)
        		    	   {
        		    	   	stack[jishu]=b;
        		    	   	jishu++;
						   }
						else
						   {
						   	if(youxian(stack[jishu-1])>=youxian(b))
						   	   {
								  printf("%c",stack[jishu-1]);
								  stack[jishu-1]=b;}
						    else stack[jishu++]=b;
						   	      
						   }
						
						
					}
					else printf("%c",b);
			    }
			    while(jishu>0)
			     {
			     	printf("%c",stack[jishu-1]);
			     	jishu--;
				 }
		 } 

 

中缀转后缀的数组实现(只有加减乘除

标签:

原文地址:http://www.cnblogs.com/xuehongyang/p/5373817.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!