[問題] 如何不讀取空白

看板C_and_CPP (C/C++)作者 (閒雜人)時間16年前 (2009/10/24 23:15), 編輯推噓2(204)
留言6則, 4人參與, 最新討論串1/1
題目是輸入後序式子並算出答案 比如說輸入123*+ 輸出就為7 但題目要求的數入格式是 1 2 3 * + 請各位解答 #include<iostream> #include<stdlib.h> using namespace std; int main() { char data[100]; int c[50],top=0,i,a,b; cin>>data; for(i=0;data[i]!='\0';i++) { if(data[i]>47 && data[i]<58) { c[top++]=data[i]-48; } else { b=c[--top]; a=c[--top]; if(data[i]=='+')c[top++]=a+b; else if(data[i]=='-')c[top++]=a-b; else if(data[i]=='*')c[top++]=a*b; else if(data[i]=='/')c[top++]=a/b; } } cout<<c[--top]; system("pause"); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.73.173.145

10/24 23:28, , 1F
while (??) { cin >> ??; } cin 會自動根據空白切割
10/24 23:28, 1F

10/24 23:32, , 2F
while(?) 裡的問號是什麼@@?
10/24 23:32, 2F

10/25 00:09, , 3F
你自己決定什麼時候要結束讀取囉
10/25 00:09, 3F

10/25 00:13, , 4F
scanf
10/25 00:13, 4F

10/25 00:38, , 5F
scanf("%[^ ]", data); 無法作用...
10/25 00:38, 5F

10/25 01:03, , 6F
用堆疊的概念.把數字塞入.遇到運算號浮pup出來計算
10/25 01:03, 6F
文章代碼(AID): #1Aune6ph (C_and_CPP)
文章代碼(AID): #1Aune6ph (C_and_CPP)