w3resource

C Exercises: Calculate and print average of the stream of given numbers

C Programming Mathematics: Exercise-21 with Solution

Write a C program to calculate and print the average (or mean) of a stream of given numbers.

Example 1:
Input:
arr[] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}
Output:
Average of 1 numbers is 10.000000
Average of 2 numbers is 15.000000
Average of 3 numbers is 20.000000
Average of 4 numbers is 25.000000
Average of 5 numbers is 30.000000
Average of 6 numbers is 35.000000
Average of 7 numbers is 40.000000
Average of 8 numbers is 45.000000
Average of 9 numbers is 50.000000
Average of 10 numbers is 55.000000

Visual Presentation:

C Exercises: Calculate and print average of the stream of given numbers

Sample Solution:

C Code:

#include <stdio.h>
#include <stdlib.h>

// Function to compute streaming average of an array
void streamAvg(float arr[], int arr_size) { 
    float avg = 0; // Variable to store the average
    int i = 0;

    // Loop through the array to compute streaming averages
    while (i < arr_size) { 
        avg = (avg * i + arr[i]) / (i + 1); // Update the average value
        printf("\nAverage of %d numbers is %f \n", i + 1, avg); // Print the streaming average
        i++;
    } 
    return; // End of function
} 

// Main function
int main(void) { 
    float arr[] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}; // Array of floating point numbers
    int arr_size = sizeof(arr) / sizeof(arr[0]); // Calculate the size of the array
    printf("\nElements in array are: ");  

    int i = 0;
    // Print the elements in the array
    while (i < 10) {  
        printf("%f  ", arr[i]);  
        i++;
    } 
    streamAvg(arr, arr_size); // Call the function to calculate streaming averages
    return 0; // End of the main function
}

Sample Output:

Elements in array are: 10.000000  20.000000  30.000000  40.000000  50.000000  60.000000  70.000000  80.000000  90.000000  100.000000  
Average of 1 numbers is 10.000000 

Average of 2 numbers is 15.000000 

Average of 3 numbers is 20.000000 

Average of 4 numbers is 25.000000 

Average of 5 numbers is 30.000000 

Average of 6 numbers is 35.000000 

Average of 7 numbers is 40.000000 

Average of 8 numbers is 45.000000 

Average of 9 numbers is 50.000000 

Average of 10 numbers is 55.000000 

Flowchart:

Flowchart: Calculate and print average of the stream of given numbers.

C Programming Code Editor:

Improve this sample solution and post your code through Disqus.

Previous: Write a C program to multiply two integers without using multiplication, division, bitwise operators, and loops.
Next: Write a C program to count the numbers without digit 7, from 1 to a given number.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/c-programming-exercises/math/c-math-exercise-21.php