#include<iostream> #define m printf("(") #define n printf(")") #define pzj polan() using namespace std; char a[100]; double pzj { scanf("%s",a); switch(a[0]) { case'+': m; pzj; printf("+"); pzj; n; break; case'-': m; pzj; printf("-"); pzj; n; break; case'*': pzj; printf("×"); pzj; break; case'/': pzj; printf("÷"); pzj; break; default: printf("%s",a); break; } return 0; } int main() { pzj; printf("/n"); return 0; } 简单易懂,我就不废话了:宏定义有点太私人化,hoho