#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 關注
- 260 瀏覽
添加回答
舉報
0/150
提交
取消