下载此文档

加减乘除混合运算.doc


文档分类:幼儿/小学教育 | 页数:约33页 举报非法文档有奖
1/33
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/33 下载此文档
文档列表 文档介绍
加减乘除混合运算/* Note:Your choice isC IDE */ #include "" #include "" #include "" int n=0; char record[20]; float product(); float change(); float muli() { float summ; summ=product(); while(record[n]=='-'||record[n]=='+') { switch(record[n]) { case '+':n++;summ+=product();break; case '-':n++;summ-=product();break; }} return summ; } float product() { float sump; sump=change(); while(record[n]=='*'||record[n]=='/') { switch(record[n]) { case '*':n++;sump*=change();break; case '/':n++;sump/=change();break; }} return sump; } float change() { float sumc; char rec[20],i=0; if(record[n]=='(') { n++; sumc=muli(); } if(record[n]==')') n++; while(isdigit(record[n])||record[n]=='.') { while(isdigit(record[n])||record[n]=='.') rec[i++]=record[n++]; rec[i]='\0'; sumc=atof(rec); } return sumc; } void main() { while(1) { n=0; scanf("%s",record); printf("%s=%g\n",record,muli()); }} #include "" #include "" // 网上找的,在 VC 下测试通过,还改了一个显示的小错。#include "" #include "" //expression evaluate #define iMUL 0 #define iDIV 1 #define iADD 2 #define iSUB 3 #define iCap 4 //#define LtKH 5 //#define RtKH 6 #define MaxSize 100 void iPush(float); float iPop(); float StaOperand[MaxSize]; int iTop=-1; // char Srcexp[MaxSize]; char Capaexp[MaxSize]; char RevPolishexp[MaxSize]; float NumCapaTab[26]; char validexp[]="*/+-()"; char NumSets[]="0123456789"; char StackSymb[MaxSize]; int operands; // void NumsToCapas(char [], int , char [], float []); int CheckExpress(char); int PriorChar(char,char); int GetOperator(char [], char); void counterPolishexp(char INexp[], int slen, char Outexp[]); float CalcRevPolishexp(char [], float [], char [], int); void main() { int ilen; float iResult=; printf("enter a valid number string:\n"); memset(StackSymb,0,MaxSize); memset(NumCapaTab,0,26); //A--, B--, etc. gets(Srcexp); ilen=strlen(Srcexp); //printf("source expression:%s\n",Srcexp); NumsToCapas(Srcexp,ilen,Capaexp,NumCapaTab); printf("Numbers listed as follows:\n"); i

加减乘除混合运算 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数33
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxj16588
  • 文件大小0 KB
  • 时间2016-03-25
最近更新