比如第一次运算结果为16, 记录下16这个数字,下一次运算结果为14, 再记录下14,最后16加14, 怎样做到储存这个16和14?
如果你在用栈来实现四则运算的话,那么每次执行一次运算,肯定是从操作数栈中取出两个数(不考虑单个数的运算),计算出结果后,将结果入栈,这样中间的结果就被保存下来了。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-05-13
用数组储存每次运行的结果。。需要的时候直接调用数组,,追问
能不能简单地给我一个例子,谢谢。
追答int a[10]={0};
int i,j,k,z=0;
printf("请输入两个数,执行加法运算,输入0 0结束输入");
whlie(1)
{
for(k=0;k<10;k++)
{
scanf("%d %d",&i,&j);
if(i==0&&j==0)
break;
}
a[k]=i+j;
}
for(i=0;i<k;i++)
{
if(a[i]==0)
break;
z=z+a[i];
}
printf("%d",z);
思路差不多是这样的, 语法有错误的地方你再改下。
思路:先定义一个数组,值可以值为0(可以换成-9999,0比较常见容易出错),就是每进行一个加法运算,数组依次存入加法的结果,然后最后用for循环判断数组的值,不为0就累加;为0退出循环。
第2个回答 2013-05-13
写入文件即可!!!!追问
我是初学者,还没学到怎么写入文件。。