本算法巧妙地利用了c语言中的scanf,逐个对参加运算的数字和运算符进行输入。
#include<iostream>
using namespace std;
int main( )
{ int k,i,j,a[100];
char x;
while(scanf("%d",&k)!=EOF)
{
i=0;
a[0]=0;
a[++i]=k;
while((scanf("%c",&x)!=EOF)&&((x=='+')||(x=='-')||(x=='*')||(x=='/')))
{
scanf("%d",&k);
if(x=='+')
a[++i]=k;
else if(x=='-')
a[++i]=-1*k;
else if(x=='*')
a[i]=a[i]*k;
else
a[i]=a[i]/k;
}
for(j=1;j<=i;j++)
a[0]+=a[j];
printf("%d\n",a[0]);
}
return 0;
}