lex program to eliminate unnecessary white spaces, comments and appropriately indent the given input c code.
$ lex <filename>.lex
$ gcc lex.yy.c -lfl
$ ./a.out <filename>.c
uncommented.c contains the c code without any comments, and unindented.
indented.c contains the indented uncommented c code.
output.c is the final c code.