Below are some problems that will help you get comfortable with arrays and structures in C before you start work on assignment 5. These should not be handed in.
Arrays
- Write a program that asks the user to enter 5
double
s. These should be stored in an array. Calculate and output the average of these values. [ array 1 solution ] - Write a program that asks the user for up to 10
int
s. When the user enters-1
, it indicates that they are done. Calculate and output the average of these. [ array 2 solution ]
Structures
- Create a program with the following structure to contain information about an assignment:
typedef struct {
int mark;
int max_mark;
double weight;
} assignment;The elements
mark
andmax_mark
should be the mark given and the maximum mark possible. If you got 17/20 on an assignment,mark
should be 17 andmax_mark
should be 20. Theweight
should be the percentage of the total mark for this assignment. If the assignment is worth 5% of the total mark,weight
should be 0.05.Create a program with this structure. Create a few variables of type
assignment
and assign values to the various parts. Then, output them, or do some calculation. [ struct 1 solution ] - Create a structure to hold a point in two dimensions--it should contain the point's x and y coordinates. Write a function that calculates the distance between two points. [ struct 2 solution ]
Arrays of Structures
For the assignment, you also have to work with arrays of structures.
- Create a program with the
assignment
structure from the Structure section, question 1. Create an array of fiveassignment
s. Assign some values to each element's parts.Write a loop to calculate the weighted average of these assignments. The weighted average is the sum of the weight times the mark, divided by the maximum mark. [ combination solution ]