作者在 2011-07-07 23:05:54 发布以下内容
[br/]以下此次正文:[br/]#include<stdio.h>[br/][br/]char fun(char a)[br/]{[br/] if(a=='*'||a=='/') return 2;[br/] if(a=='+'||a=='-') return 1;[br/]}[br/][br/]int num(char a,int b,int c)[br/][br/]{[br/] switch(a)[br/] {[br/] case'*':return b*c; [br/]case'/':return b/c; [br/]case'+':return b+c; [br/]case'-':return b-c; [br/]}[br/]}[br/][br/]void main()[br/]{[br/] char a[40],c[40]; [br/]int b[20],i,j=0,k=0; [br/]int s1,s2;[br/] gets(a);[br/] for(i=0;a[i]!='\0';)[br/] {[br/] b[k]=a[i]-'0'; [br/]i++;[br/] while(a[i]<='9'&&a[i]>='0') [br/]{[br/] b[k]=b[k]*10+a[i]-'0';[br/]i++;[br/] }[br/] k++;[br/] if(a[i]!='\0')[br/] {[br/] c[j]=a[i];[br/]j++;[br/]i++;[br/] }[br/] }[br/][br/][br/] for(i=0,j=0;i+1<k;)[br/] {[br/] [br/] if(fun(c[j])>=fun(c[j+1]))[br/] {[br/] b[i]=num(c[j],b[i],b[i+1]);[br/] for(s1=i+1;s1<k;s1++)[br/] b[s1]=b[s1+1];[br/] for(s1=i;s1<k-1;s1++)[br/] c[s1]=c[s1+1];[br/] k--;[br/] i=0,j=0;[br/] [br/] }[br/] else[br/] {[br/] i++;j++;[br/] [br/] }[br/] }[br/] printf("\nthe final number =%d\n",b[0]);[br/]}