#include <stdio.h>
typedef struct
{
char num;
void (*func)(void);
}STATE;
char tests=0;
void func1(){
printf("state1");
}
void func2(){
printf("state2");
}
STATE situation[6]=
{
{2,func1},
{3,func2},
{4,func1},
{5,func1},
{6,func1},
{7,func1}
};
int main(){
char ii;
while(1){
tests++;
for(ii=0;ii<sizeof(situation)/sizeof(situation[0]);ii++){
if(situation[ii].num==tests)
situation[ii].func();
}
}
return 0;
}