⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculate.h

📁 这个程序是用来实现管与矩阵加法的链表表示法。是用三元表法莱实现的!
💻 H
字号:

typedef char DataTypeQ;
typedef float DataTypeS;

#define MaxQueueSize  100
#define MaxStackSize  100

#include"SeqStack.h"
#include"SeqQueue.h"

#include"stdio.h"
#include"windows.h"
#include"stdlib.h"

int Calculate( SeqQueue Q, float *f )
{
	SeqStack S;
	char m;
	float x,y;

	StackInitiate(&S);

	while(1)
	{
		if( 0 == QueueDelete( &Q, &m ) )
			break;
		else
		{
			switch(m)
			{
			case '+':
				{
					StackPop( &S, &x );
					StackPop( &S, &y );

					x = y + x;

					StackPush( &S, x );
					break;
					
				}
			case '-':
				{
					StackPop( &S, &x );
					StackPop( &S, &y );

					x = y - x;

					StackPush( &S, x );
					break;

				}
			case '*':
				{
					StackPop( &S, &x );
					StackPop( &S, &y );

					x = y * x;

					StackPush( &S, x );
					break;
				}
			case '/':
				{
					StackPop( &S, &x );
					StackPop( &S, &y );

					x = y / x;

					StackPush( &S, x );
					break;
				}
			default:
				{
					x = (float) atoi(&m);
					StackPush(&S, x);
				}

			}
		}
	}


	if( 0 == StackPop( &S, f ) )
	{
		printf("\n\nWrong when call the StackPop!\n");
		return 0;
	}

	return 1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -