/****************************************************/ /* */ /* program: "Dependent Control" */ /* file-name: dependent_control.c */ /* */ /* author: Jesse Bollinger */ /* date of creation: 2009-02-20 */ /* date of latest revision: 2009-02-20 */ /* */ /* description: */ /* */ /* This program takes a percent grade and */ /* determines its letter grade value. */ /* */ /* In this case, the choice of dependent */ /* control structure is better than the choice */ /* of a independent control structure. */ /* */ /****************************************************/ #include #include int main() { int student_grade; char letter_grade; int if_statement_count = 0; int comparison_count = 0; printf( "\nEnter a numeric grade: " ); scanf( "%d", &student_grade ); if( student_grade >= 90 ) { letter_grade = 'A'; if_statement_count = 1; comparison_count = 1; } else if( student_grade >= 80 ) { letter_grade = 'B'; if_statement_count = 2; comparison_count = 2; } else if( student_grade >= 70 ) { letter_grade = 'C'; if_statement_count = 3; comparison_count = 3; } else if( student_grade >= 60 ) { letter_grade = 'D'; if_statement_count = 4; comparison_count = 4; } else /* student_grade < 60 */ { letter_grade = 'F'; if_statement_count = 4; comparison_count = 4; } printf( "\nThe corresponding letter grade is: %c\n\n", letter_grade ); printf( "Number of if statements entered during execution: %d\n", if_statement_count ); printf( "Number of comparisons performed during execution: %d\n", comparison_count ); /* exit notification */ printf( "\n" ); /* prevent console from instantly closing on program termination */ /* by waiting for enter to be pressed */ fflush( stdin ); scanf( "%*c" ); /* EXIT_SUCCESS return code tells the OS that program execution went ok */ /* and program ends */ return EXIT_SUCCESS; }