计算10以内的+-*/运算。
以字符串的形式输入,输出结果。如:“1+2/3” 输出:1.
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
const len=5;
//四则运算
int cal(int ch1,char op,int ch2)
{
switch(op){
case '+':
return ch1+ch2;
case '-':
return ch1-ch2;
case '*':
return ch1*ch2;
case '/':
return ch1/ch2;
}
}
int main()
{
char *p=new char[20];
gets(p);
int ch1,ch2,res;
char op;
ch1=*p-'0';
op=*(p+1);
ch2=*(p+2)-'0';
p+=3;
while(*p!='\0')
{
if((*p=='*'||*p=='/')&&(op!='*'&& op!='/'))
{
ch2=cal(ch2,*p,*(p+1));
}
else
{
ch1=cal(ch1,op,ch2);
op=*p;
ch2=*(p+1)-'0';
}
p+=2;
}
res=cal(ch1,op,ch2);
cout<<res;
}