Beg_com:switch(current)

{

case'/':putc(current,f_out);break;

case'*':where=in_com;break;

default:

putc('/',f_out);

putc(current,f_out);

where=out;

}

Аналогічно програмуються всі інші стани СА.

Тепер легко можна написати програму, що реалізує СА, наведений на рис. 9.5:

#include <stdio.h>

enum states{out,beg_com, in_com, end_com};

char current;

states where;

FILE*f_in,*f_out;

main(){

where=out;

f_in=fopen("c:\\text_in.txt","r");

f_out=fopen("c:\\text_out.txt","w");

while(!feof(f_in))

{

current=getc(f_in);

switch(where) {

case out:

Switch(current)

{

case '/':where=beg_com;break;

default:putc(current,f_out);

}

break;

case beg_com:

Switch(current)

{

case'/':putc(current,f_out);break;

case'*':where=in_com;break;

default:

putc('/',f_out);

putc(current,f_out);

where=out;

}

break;

case in_com:switch(current){

case'*':where=end_com;

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: