#include <stdio.h>
#include <string.h>
char stand[30][15]={"main","int","char","long","short","unsigned","float","struct","union","while","if","printf","scanf","for","else","switch","case"};
char token[15]; /*定义相关全局变量*/
char character[1];
char table[50][30];
reserve() /*若TOKEN中的字符串是保留字则返回1,否则返回0*/
{int i;
for(i=0;i<30;i++)
if(strcmp(token,stand[i])==0)
return(1);
return(0);
}
main()
{int i,j,c,k;
printf("input source program:\n");
for(i=0;;i++) /*输入原程序*/
{
gets(table[i]);
if(strcmp(table[i],"\0")==0)
break; /*.............................*/
}
printf("the result is:\n");
for(i=0,j=0;i<50;j++)
{if(j==30)
{i++;j=0;}
for(k=0;k<15;k++)
token[k]='\0';
if(table[i][0]=='*')break;
while(table[i][j]==' ')j++;
character[0]=table[i][j];
switch(character[0])
{
case 'a':
case 'b':
case 'c':
case 'd':
case 'e':
case 'f':
case 'g':
case 'h':
case 'i':
case 'j':
case 'k':
case 'l':
case 'm':
case 'n':
case 'o':
case 'p':
case 'q':
case 'r':
case 's':