#include "stdafx.h"#include <iostream>using namespace std;int main(){ cout<<"请输入运算表达式,以数字开头,分号结尾\n";float num[500];char opr[500];int n=0,o=0;do{cin>>num[n]>>opr[o]; //存入表达式n++,o++;}while(opr[o]!=';');float b=0,s=0;int i=0,j=0;while (j<o) //读取表达式{switch(opr[j]){case '+' :s+=num[i];case '-' :s-=num[i];}i++,j++;}cout<<s;return 0;}写一个程序能读入并计算一个只包含加减运算的表达式,每个输入的数据都是浮点数,除第一个数以外,其余每个数前面都有一个运算符,如“23+43-233+234;”表达式以分号“;”结束。
1 回答
三国纷争
TA贡献1804条经验 获得超7个赞
do
{
cin>>num[n]>>opr[o]; //存入表达式 这里输入一个字符
n++,o++; //这里o位置变了
}while(opr[o]!=';'); //这里又想检查刚输入的o原位的数,所以,永远检查不到了!
do
{
cin>>num[n]>>opr[o];
n++,o++;
}while(opr[o-1]!=';'); //取上一位
- 1 回答
- 0 关注
- 225 浏览
添加回答
举报
0/150
提交
取消