Remove markup

     1 #include <stdio.h>
     2 /* by Michal Koucky */
     3 /* Used linear method - you count the number of expected 'enclosed'
     4 expressions. After every operator E,... you expect one more expression
     5 than before, N doesn't change the number of expected expressions,
     6 p through z decreases the number of expected expressions by one (they
     7 are enclosed expr). */
     8
     9 int read_sen()
    10 /**
    11 r: 0 ok.
    12    -1 syntax err
    13    -3 eof
    14 */
    15 {
    16 	char c;
    17 	int senc;	/* number of expected (sub)sentences */
    18
    19 	senc=1;		/* you expect one enclosed expression */
    20
    21 	while(1){
    22
    23 	switch( c= getchar() )
    24 	{
    25
    26 	case 'C':
    27 	case 'D':
    28 	case 'E':
    29 	case 'I':
    30 		if(senc)senc++;
    31 	case 'N':
    32 	        if(!senc){	/* consume rest of line */
    33 	        	while(getchar()!='\n');
    34 	        	return -1;
    35 	        }
    36 		break;
    37
    38 	case '\n':
    39 		if(senc) return -1;
    40 		else return 0;
    41 	case EOF:
    42 		return -3;
    43 	default:
    44 		if( c < 'p' || c > 'z' || !senc){	/* consume rest of line */
    45 	        	while(getchar()!='\n');
    46 	        	return -1;
    47 	        }
    48 		senc--;
    49 	}
    50 	}
    51     return -1;
    52 }
    53
    54 int main()
    55 {
    56 	while(1)
    57 	{
    58 		switch(read_sen())
    59 		{
    60 		case 0:
    61 			printf("YES\n");
    62 			break;
    63 		case -1:
    64 			printf("NO\n");
    65 			break;
    66 		case -3:
    67 			return 0;
    68 		}
    69 	}
    70 }	/* main */
    71

syntax highlighted by Code2HTML, v. 0.9.1