#include <stdio.h> void state_init() { printf("Init"); } void state_load() { printf("Load"); } void state_execute() { printf("Execute"); } void state_exit() { printf("Exit"); } void run_state_sequence(int start) { void (*funcPtr[4])(); funcPtr[0] = &state_init; funcPtr[1] = &state_load; funcPtr[2] = &state_execute; funcPtr[3] = &state_exit; for (int i =0; i<3; i++){ funcPtr[start](); printf("\n"); start = ((start +1)% 4); } } int main() { int start; scanf("%d", &start); run_state_sequence(start); return 0; }
Test Cases
Test Results
Input
0
Expected Output
Init Load Execute