📄 calculate.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 + -