Initializing a Two-Dimensional Array, finds yearly totals, yearly average, and monthly average for several years of rainfall data - C Array

C examples for Array:Multidimensional Arrays

Description

Initializing a Two-Dimensional Array, finds yearly totals, yearly average, and monthly average for several years of rainfall data

Demo Code

#include <stdio.h>

#define MONTHS 12    // number of months in a year
#define YEARS   5    // number of years of data

int main(void){
    const float rain[YEARS][MONTHS] =
    {//from  www .j  a  v a  2s  . co  m
        {1.3,2.3,4.3,3.5,2.4,1.2,3.2,7.2,7.4,2.4,3.5,6.6},
        {8.5,8.3,4.2,1.6,2.4,3.3,5.2,6.9,8.3,2.9,1.4,7.3},
        {9.1,8.5,6.5,4.3,2.1,4.8,0.2,5.2,1.1,2.3,6.1,8.4},
        {7.2,9.9,8.4,6.3,1.2,4.8,0.4,4.1,8.6,1.7,4.3,6.2},
        {7.6,5.6,3.8,2.7,3.8,4.2,1.2,3.1,9.2,1.3,2.6,5.2}
    };
    int year, month;
    float subtot, total;
    
    printf(" YEAR    RAINFALL  (inches)\n");
    for (year = 0, total = 0; year < YEARS; year++)
    {
        for (month = 0, subtot = 0; month < MONTHS; month++)
            subtot += rain[year][month];
        printf("%5d %15.1f\n", 2010 + year, subtot);
        total += subtot; // total for all years
    }
    printf("\nThe yearly average is %.1f inches.\n\n", total/YEARS);
    printf("MONTHLY AVERAGES:\n\n");
    printf(" Jan  Feb  Mar  Apr  May  Jun  Jul  Aug  Sep  Oct Nov  Dec\n");
    
    for (month = 0; month < MONTHS; month++){             
        for (year = 0, subtot =0; year < YEARS; year++)
            subtot += rain[year][month];
        printf("%4.1f ", subtot/YEARS);
    }
    printf("\n");
    
    return 0;
}

Related Tutorials