Question
C assignment Description: The purpose of this assignment is to practice writing code that calls functions, and contains loops and branches. You will create a
C assignment
Description: The purpose of this assignment is to practice writing code that calls functions, and contains loops and branches. You will create a C program that prints a menu and takes user choices as input. The user will make choices regarding different plus (+) or X figures that will
Your code must contain at least one of all of the following control types:
- nested for() loops
- a while() or a do-while() loop
- a switch() statement
- an if-else statement
- five functions (in addition to the main() function)
Consider which control structures will work best for various aspects of the assignment. (Hint: What control type can be used with a menu driven program? How many statements should a case for a switch statement contain? Where would nested loops be appropriate for this program?) The first thing your program will do is print a menu of choices for the user. You may choose your own version of the wording or order of choices presented, but each choice given in the menu must match the following:
Menu Choice | Valid User Input Choices |
Enter/Change Character | 'C' or 'c' |
Enter/Change Number | 'N' or 'n' |
Print Plus (+) Figure | '1' |
Print X Figure | '2' |
Quit Program | 'Q' or 'q' |
A prompt is presented to the user to enter a choice from the menu. If the user enters a choice that is not a valid input, a message stating the choice is invalid is displayed and the menu is displayed again.
Your program must have at least five functions (not including main()) including:
- A function that prints the menu of choices for the user, prompts the user to enter a choice and retrieves that choice. The return value of this function must be void. It will have one pass-by-reference parameter of type char. On the function's return, this parameter will contain the user's entry, which is then used to determine the next action performed by the program. This function should allow the user to enter any value. In other words, it will not check for proper input. It will store the user input in the pass-by-reference variable and return, even if the input is not a valid menu choice.
- A function that prompts the user to enter a single character. The return value of the function must be of type char and will return the character value entered by the user. This return value will be stored in a local variable, C (or whatever variable name you choose), in main(). The initial default value of this character will be ' ' (blank or space character).
- A function that prompts the user to enter a odd number between 3 and 15 (inclusive). If the user enters an even number or a value outside this range, the user is prompted to re-enter a value until a proper value is entered. The return value of the function must be of type int and will return the value entered by the user. This return value will be stored in a local variable, N (or whatever variable name you choose), in main(). The initial default value of this integer will be 0.
- Two "Print Figure" functions. Each function will take the current integer value N and character value C as input parameters. The return values of these functions will be void. The functions will print figures of N lines and columns using the input character C. The Plus function will print the figure as a plus (+) sign. The X function will print the figure as a X. For example, if the integer value N = 5, and the character value C = '*' and the X function is called, the following figure will be printed:
* * * * * * * * *
If the Plus function is to called, then the following figure is printed:
* * ***** * *
Note that if the user attempts to print the figure before entering any values for C or N (or whatever variable name you choose), your program will still call the functions to print the figure. However, if N = 0 (the default value), the function will print a figure with no lines or columns (i.e nothing). If C = ' ' (the default), the function will print a figure with N lines or columns, but since C is the blank character, no figure will be seen.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started