栈的新手,求大佬指点
查看原帖
栈的新手,求大佬指点
738168
wang0728楼主2023/7/24 16:34
#include <bits/stdc++.h>
using namespace std;
char s[55];
stack<int>t;
int a,b;
int main(){
	for(int i=0;s[i]!='@';i++){
		cin>>s[i];
		if(s[i]!='.'&&s[i]>='0'&&s[i]<='9'){
			t.push(s[i]);
		}
		else if(s[i]=='+'){
			t.pop();
			a=t.top();t.pop();
			b=t.top();t.pop();
			t.push(b+a);
		}
		else if(s[i]=='-'){
			t.pop();
			a=t.top();t.pop();
			b=t.top();t.pop();
			t.push(b-a);
		}
		else if(s[i]=='*'){
			t.pop();
			a=t.top();t.pop();
			b=t.top();t.pop();
			t.push(b*a);
		}
		else if(s[i]=='/'){
			t.pop();
			a=t.top();t.pop();
			b=t.top();t.pop();
			t.push(b/a);
		}
//		cout<<s[i]<<" ";
	}
//	while(!t.empty()){
//		cout<<t.top();
//		t.pop();
//	}
	cout<<t.top();
	return 0;
}
2023/7/24 16:34
加载中...