求救大虾 用C++做 “分数计算器 ” 程序

来源:百度知道 编辑:UC知道 时间:2024/05/10 20:43:53
用C++做 把源代码发来
分数计算器
3.2.1 程序功能简介
分数计算及测试程序,具有对输入的运算进“+,-,*,/,^”的功能。
3.2.2 课程设计要求
(1)将主程序设计成一个分数计算器。
(2)可完成“+,-,*,/,^”等基本运算。
(3)可将分数化为十进制小数和带分数。
(4)可执行“+,-,*,/,^”(含括号的)四则运算。
3.2.3 课程设计说明
(1)编写程序时,建议用两个数组分别来存放相邻的输入数据。
(2)每个运算符的前后可能出现的其它运算符,应该作相应的处理。
(3)四则运算要符合一定的格式,例如1/2+2/3*3/4+(1/2+2/3*3/4)+1/2^2/1#其中约定:①符号‘#’用于表示输入结束②符号‘^’为乘方符号。

这是我的多位数计数程序,能+-*/,按照四则混合运算.以=为结束符号.修改下应该可以的.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 10
typedef struct
{
char data[MAX];
int top;
}StackChar;
StackChar StackCharInit()
{
StackChar S;
S.top=-1;
return S;
}
void StackCharPush(StackChar &S,char x)
{
if(S.top==MAX-1)
{
printf("Stcak Full!\n");
exit(0);
}
S.top++;
S.data[S.top]=x;
}
char StackCharPop(StackChar &S)
{
if(S.top>=0)
{
char x=S.data[S.top];
S.data[S.top]='\0';
S.top--;
return x;
}
else
{
printf("Stack Empty!\n");
exit(0);
}
}
void StackCharPrint(StackChar S)
{
int i;
for(i=0;i<S.top+1;i++)
printf("%c",S.data[i]);

}
StackChar StackCharClear(Stac