Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- enum {SLASH = '/', BACKSLASH = '\\', ASTERISK = '*', ENDLINE = '\n', QUOTES = '"'};
- void quotes(void);
- void line(void);
- void block(void);
- void asterisk(void);
- void code(void);
- void slash(void);
- int c;
- int main () {
- c = getchar();
- code();
- }
- void code() {
- switch (c) {
- case EOF:
- return;
- case QUOTES:
- putchar(c);
- c = getchar();
- quotes();
- case SLASH:
- c = getchar();
- slash();
- default:
- putchar(c);
- c = getchar();
- code();
- }
- }
- void block() {
- switch (c) {
- case EOF:
- return;
- case ASTERISK:
- c = getchar();
- asterisk();
- return;
- default:
- c = getchar();
- block();
- return;
- }
- }
- void asterisk() {
- switch (c) {
- case EOF:
- return;
- case SLASH:
- c = getchar();
- code();
- return;
- default:
- c = getchar();
- block();
- return;
- }
- }
- void line() {
- switch (c) {
- case EOF:
- return;
- case ENDLINE:
- c = getchar();
- code();
- default:
- c = getchar();
- line();
- }
- }
- void quotes() {
- switch (c) {
- case EOF:
- return;
- case QUOTES:
- putchar(c);
- c = getchar();
- code();
- case BACKSLASH:
- putchar(c);
- c = getchar();
- putchar(c);
- c = getchar();
- quotes();
- default:
- putchar(c);
- c = getchar();
- quotes();
- }
- }
- void slash() {
- switch (c) {
- case EOF:
- return;
- case SLASH:
- c = getchar();
- line();
- return;
- case ASTERISK:
- c = getchar();
- block();
- return;
- default:
- putchar(SLASH);
- putchar(c);
- c = getchar();
- code();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement