#include<stdio.h> void Fenxi(a,b); int i; main(){ char a[50]; printf("请输入源程序:"); gets(a); printf("您要分析的源程序为:"); printf("%s",a); printf("\n"); for(i=0;i<50;i++) { Fenxi(a[i],a[i+1]); } printf("\n"); } void Fenxi(a,b) { switch(a){ case'+': printf("(13,+)"); break; case'-': printf("(14,-)"); break; case'*': printf("(15,*)"); break; case'/': printf("(16,/)"); break; case':': if(b=='=') { i++; printf("(18,:=)"); } else printf("(17,:)"); break; case'<': if(b=='>') { i++; printf("(21,<>)"); } else if(b=='=') { i++; printf("(22,<=)"); } else printf("(20,<)"); break; case'>': if(b=='=') { i++; printf("(24,>=)"); } else printf("(23,>)"); break; case'=': printf("(25,=)"); break; case';': printf("(26,;)"); break; case'(': printf("(27,()"); break; case')': printf("(28,))"); break; case'#': printf("(20,#)"); break; default: break; } }