逆波兰表达式学习日记(2)
Jun 07, 2016 pm 03:33 PM鉴于今天星期三,下午常规没课。而且后缀求结果也挺简单的,就先把这个写完吧。 之前已经转化完了表达式,现在只要把一群数字和加减乘除运算一下就OK了(说实话,有点懒了,最近长春PM2.5有点高,我根本就没有兴趣搞ACM嘛) int change(char *a) { stack int
鉴于今天星期三,下午常规没课。而且后缀求结果也挺简单的,就先把这个写完吧。
之前已经转化完了表达式,现在只要把一群数字和加减乘除运算一下就OK了(说实话,有点懒了,最近长春PM2.5有点高,我根本就没有兴趣搞ACM嘛)
int change(char *a)
{
stack
int i=0;
while(a[i]!='\0')
{
if(a[i]>='0'&&a[i]
{
t.push((int)a[i++]-'0');
}
else
{
int num1,num2;
num1=t.top();t.pop();
num2=t.top();t.pop();
switch(a[i++]) //有运算符的话,先把数字取出来,然后运算后的结果压进去
{
case '+':num1+=num2;t.push(num1);break;
case '-':num2-=num1;t.push(num2);break;
case '*':num1*=num2;t.push(num1);break;
case '/':num2/=num1;t.push(num2);break;
}
}
}
return t.top(); //最后,栈内留下的最后一个数就是你要的结果啦
}
因为有点想看看数据结构后面的东西了,所以有点着急结束,这两个函数只能针对个位数的运算,没有在后缀表达式插入空行来区分数字,那就留着我之后再去写吧。。(困)
over

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Erfahren Sie, wie Sie pip vollständig deinstallieren und Python effizienter nutzen

Ein tiefer Einblick in die Farbkarte von Matplotlib

Die Attraktivität der C-Sprache enthüllen: Das Potenzial von Programmierern aufdecken

Erste Schritte mit Pygame: Umfassendes Installations- und Konfigurations-Tutorial

Lassen Sie uns gemeinsam lernen, wie Sie die Stammzahl in Word eingeben

Erlernen Sie schnell die Rohrinstallation und erlernen Sie die Fähigkeiten von Grund auf

Verstehen Sie diese 20 Dune-Analyse-Dashboards und erfassen Sie schnell Trends in der Kette

Lernen Sie die Hauptfunktion der Go-Sprache von Grund auf kennen
