用c语言设计一个简单的加减乘除计算器 具体需要这样做
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。
2、输入预处理命令和主函数:#include /函数头:输入输出头文件/,void main()/空类型:主函数/。
3、定义变量:int a,b,d; /定义变量的数据类型为整型/,char c;/定义变量的数据类型为字符型/。
4、输入四则运算式:printf(输入如“34”或“5+2”的四则运算式:);/输出文字提示/scanf(%d%c%d,a,c,b);/输入四则运算式*/。
5、判断运算符号:switch(c)[](https://new.qq.com/rain/a/20230303A01CER21)/*判断运算符号*/{case'+':d=a+b;break;/*进行加法6、运算*/case'-':d=a-b;break;/*进行减法运算*/case'*':d=a*b;break;/*进行乘法运算*/case'/':d=a/b;break;/*进行除法运算*/}。
7、输出结果:printf(%d%c%d=%d\n,a,c,b,d);/输出结果/。
用C语言编译一个包含加减乘除四则运算的计算器,求思路
include
include
using
namespace
std;
int
main()
{
int
a,b;//a是输出结果,b是临时输入数据
char
x;//x是标点符号输入
cina;//先输入第一个数
while(1)//由于不知道运算式一共多长,所以用一个死循环不断读取
{
cinx;//输入运算符
if(x.
c语言计算器思路
这个用C语言写的计算器的思路是什么?
对初学编程者来说,这个程序的原理确实难了点,因为它用到了编译原理的知识.
即如果设一个四则运算表达式的形式为S,那么它一定是一个以等号结尾的运算式,即S-exp=,-是推导符号.
运算式exp又可以继续推导成
exp-exp+term|exp-term|term
exp表示加减运算,term表示乘除运算.这个推导式反映了乘除的优先级比加减高.
即要先计算乘除式的结果,再来加减.
term可以推导如下:
term-term*factor|term/factor|factor
factor-num|(E)
factor是数字或者一个被括号括住的运算式,表示最高优先级.
数字本身是不带运算的,是原子性的,肯定是最高优先级.
括号是被规定了优先计算.
这个程序的代码就是按照上面的推导式,用递归方式来分析运算式的.
C语言编计算器,实现连续运算,该怎么办?给个思路就行。谢谢了。
能够进行任意多个数的加减乘除四则运算,比如想要计算1+2+3,输入1+2+3=,得到结果6
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);
break;
}
scanf("%d",y);
}
}