C语言swift加法计算器器

C语言编写简单计算器
C语言编写简单计算器
C语言编写简单计算器|浏览:&|更新:& 13:29|标签:&11步骤12345678这个计算器比较简单,只能计算加减乘除,用到了递归思想首先打开VC++文件》》新建新建一个C++文档先声明主函数还有变量#include &stdio.h&程序用到几个函数,下面我来介绍下这个函数是运算符匹配程序void match( char expectedToken ) /*对当前的标志进行匹配*/{if( token == expectedToken ) token = getchar(); /*匹配成功,获取下一个标志*/else{ & & &printf("cannot match\n");exit(1); /*匹配不成功,退出程序*/}}这个函数是计算低优先级的运算,比如,加减int low( void )/*用于计算表达式中级别最低的运算*/{int result = mid(); /*计算比加减运算优先级别高的部分*/while(( token == '+' ) || ( token == '-' ))if ( token == '+'){match('+'); & & /*进行加法运算*/result += mid();}else if ( token == '-'){match('-'); & &/*进行减法运算*/result -= mid();}}这个函数是计算高优先级运算,乘除int low( void )/*用于计算表达式中级别最低的运算*/{int result = mid(); /*计算比加减运算优先级别高的部分*/while(( token == '+' ) || ( token == '-' ))if ( token == '+'){match('+'); & & /*进行加法运算*/result += mid();}else if ( token == '-'){match('-'); & &/*进行减法运算*/result -= mid();}}这个函数是计算,乘除和带括号的运算int high( void )/*用于计算表达式中级别最高的运算,即带()的运算*/{if( token == '(' ) /*带有括号的运算*/{match( '(' );result = low();/*递归计算表达式*/match(')');}else if ( token&= '0'&&token&='9' ) /*实际的数字*/{ungetc( token, stdin ); /*将读入的字符退还给输入流,为读取整个数*/scanf( "%d", &result ); /*读出数字*/token = getchar(); &/*读出当前的标志*/}else{printf("The input has unexpected char\n"); /*不是括号也不是数字*/exit(1);}}主函数main(){ & &/*运算的结果*/ & & & & & & & & &printf("*****************************************\n");printf("**Welcome to use this simple calculator**\n");printf("**Please input a multinomial like & & &**\n");printf("** & & & & & & & & & &6-3*(5-1)/2+14/7 **\n");printf("*****************************************\n");token = getchar(); /*载入第一个符号*/result = low(); /*进行计算*/if( token == '\n' ) /* 是否一行结束 */printf( "The answer is : %d\n", result );else{printf( "Unexpected char!");exit(1); /* 出现了例外的字符 */}scanf("%d",result);return 0;}程序结果
发表评论:
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&需求发布后1小时内收到服务商响应每个需求平均有10个服务商参与95%以上的需求得到了圆满解决所有需求不向雇主收取任何佣金年关冲刺:营销这么做,业绩提升100%
大一作业 c语言计算器 **
有相似问题想解决?专业顾问来帮助您
匹配服务商
选择服务商,签单
服务商工作
验收并付款
已投标服务商
综合评分:5颗星
速度:4.92
服务:4.92
态度:4.92
好评率:100%
共有6个服务商参与报价,查看更多服务商报价
参与报价,开始赚钱
提交你的报价和方案
中标后交付作品
获得任务赏金
极速:10分钟急速响应
高品质:精选服务商提供服务
放心:不满意可退款
企业管理系统
软件1天速成
CRM客户管理开发
OA办公系统开发
交易成功的需求
其它工具软件相关需求用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除.
狮子爱1237
#include&stdio.h&#include&stdlib.h&#define&N&10void&fun(){&&&&int&a,b,t;&&&&char&c;&&&&&scanf(&%d&,&a);&&&&scanf(&&%c&,&c);&&&&scanf(&%d&,&b);&&&&if(c=='+'||c=='-'||c=='*'||c=='/'||c=='%')&&&&&{&&&&&&&&if(c=='+')&t=a+b;&&&&&&&&if(c=='-')&t=a-b;&&&&&&&&if(c=='*')&t=a*b;&&&&&&&&if(c=='%')&t=a%b;&&&&&&&&if(c=='/')&&&&&&&&{&&&&&&&&&&&&if(b==0)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&printf(&0不能做除数\n&);&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&&&&&&&&&&&&&t=a/b;&&&&&&&&}&&&&&&&&printf(&%d%c%d=%d\n&,a,c,b,t);&&&&}&&&&else&printf(&运算符号错误!\n&);}&&&void&main(){&&&&int&i;&&&&char&&&&&for(i=0;i&N;i++)&&&&{&&&&&&&&fun();&&&&&&&&printf(&是否继续(y/n)?\n&);&&&&&&&&scanf(&&%c&,&&quit);&&&&&&&&if(quit=='Y'||quit=='y')&{&&&&&&&&&&&&system(&cls&);&&//清屏函数&头文件为stdlib.h&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&if(quit=='N'||quit=='n')&&&&&}}#include&&stdio.h&&int&jia(int&a,int&b){&&&&int&s;&&&&s=a+b;&&&&return&s;}int&jian(int&a,int&b){&&&&int&s;&&&&s=a-b;&&&&return&s;}int&cheng(int&a,int&b){&&&&int&s;&&&&s=a*b;&&&&return&s;}int&chu(int&a,int&b){&&&&int&s;&&&&s=a/b;&&&&return&s;}&&void&main(){&&&&int&a,b,x,y,i;&&&&char&c;&&&&&printf(&请输入运算式:\n&);&&&&&scanf(&%d%c%d&,&a,&c,&b);&&&&x=a;&&&&y=b;&&&&for(i=0;;i++)&&&&{&&&&&&&&if(c=='+')x=jia(x,y);&&&&&&&&&else&if(c=='-')x=jian(x,y);&&&&&&&&&else&if(c=='*')x=cheng(x,y);&&&&&&&&&else&if(c=='/')x=chu(x,y);&&&&&&&&&c=getchar();&&&&&&&&if(c=='=')&&&&&&&&&{&&&&&&&&&&&&printf(&%d\n&,x);&&&&&&&&&&&&&&&&&&&&}&&&&&&&&scanf(&%d&,&y);&&&&}}
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 vb加法计算器 的文章

 

随机推荐