云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > (强烈推荐)算数表达式的求解毕业论文报告

(强烈推荐)算数表达式的求解毕业论文报告

  • 62 次阅读
  • 3 次下载
  • 2025/5/7 20:55:07

○6入栈函数 void Push(Stack *s, int x); ○7出栈函数 int Pop(Stack *s);

○8取栈顶元素函数 int GetTop(Stack *s) ; ○9判栈空函数 void Empty(Stack *s); ○10主函数 int main() 3)函数之间主要调用的关系图

本程序主要包含10个程序,各程序之间的关系如图所示:(部分函数用以上的编号表示)

1 ○2 ○3 ○5 ○6 ○7 ○8 ○9 ○

图2:函数之间调用关系图

3、详细设计和编码 (1)、结构体类型的定义 typedef struct {

int data[MAXSIZE]; int top; int base; 栈底

}Stack;

(2)、全局变量定义 以下为函数声明

void InitStack(Stack *); 初始化栈 int Empty(Stack *); 判空栈 void Push(Stack *, int ); 进栈 int Pop(Stack *);出栈

int GetTop(Stack *); 取栈顶元素

int Operate(int ,char ,int ); 计算结果 char Proceed(char ,char ); 比较优先级 int In(char ); 判断输入符

int EvalExpres(void); 表达式计算函数 定义两个栈分别存放运算符和操作数 Stack StackR,StackD;

(3)、系统主要子程序的详细设计 1)、主函数模块设计

int main()主函数 {

int v; char ch; while(1) {

printf(\欢迎使用算术表达式的求解的小程序

************\\n\

v = EvalExpres();

printf(\表达式的计算结果为:%d\

printf(\do

{

scanf(\if(ch == 'n' || ch == 'N')

exit(0);

}while(ch!='\\n'); }

在主函数中,设定用户操作界面的形式,通过调用表达式求解的子函数实现算法所要实现的功能,然后通过while()循环语句控制,可以实现多次调试。 2)、计算函数模块

int Operate(int a,char a1,int b) {

int s; int d1 = a;

int d2 = b; 把字符ab变为对应数字 switch(a1) { case '+':

s = d1+d2; break; }

return 0;

system(\

case '-':

}

s = d2-d1; break;

case '*':

s = d1*d2; break;

case '': }

return (s+'0'); 将运算结果转化为ascii码的形式入栈,

s = d2d1;

在计算函数中,定义3个变量,表示基本运算中的变量。采用开关语句实现表达式的基本运算,将运算结果转化为ASCII的形式返回。 3)、表达式求解的函数模块

int EvalExpres(void) 表达式求解函数 {

int a,b,i=0,s=0; char c[80],r;

InitStack(&StackR); 初始化栈

Push(&StackR,'#'); 将表达式起始符压入栈 InitStack(&StackD);

printf(\请输入表达式并以‘#’结束:\gets(c);

while(c[i]!='#' || GetTop(&StackR)!='#') {

if(!In(c[i])) 判断读入的字符是不是运算符 不是则进opnd栈

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

○6入栈函数 void Push(Stack *s, int x); ○7出栈函数 int Pop(Stack *s); ○8取栈顶元素函数 int GetTop(Stack *s) ; ○9判栈空函数 void Empty(Stack *s); ○10主函数 int main() 3)函数之间主要调用的关系图 本程序主要包含10个程序,各程序之间的关系如图所示:(部分函数用以上的编号表示) 1 ○2 ○3 ○5 ○6 ○7 ○8 ○9 ○ 图2:函数之间调用关系图 3、详细设计和编码 (1)、结构体类型的定义 typedef struct {

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com