逆波兰表达式学习日记(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

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Apprenez à désinstaller complètement pip et à utiliser Python plus efficacement

Une plongée approfondie dans la palette de couleurs de matplotlib

Révéler l'attrait du langage C : découvrir le potentiel des programmeurs

Premiers pas avec Pygame : didacticiel complet d'installation et de configuration

Apprenons ensemble à saisir le numéro racine dans Word

Apprenez rapidement l'installation de pip et maîtrisez les compétences à partir de zéro

Comprenez ces 20 tableaux de bord d'analyse Dune et capturez rapidement les tendances de la chaîne

Apprenez la fonction principale du langage Go à partir de zéro
