View the step-by-step solution to:

How would someone declare and initialize the array in this code?

How would someone declare and initialize the array in this code? It says it has to be modified it so that the program uses pointers instead of subscripts.


#include <stdio.h>

#define MONTHS 12  // number of months in a year

#define YEARS  5  // number of years of data

int main(void)

{

// initializing rainfall data for 2000 - 2004

const float rain[YEARS][MONTHS] =

{

{4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,3.5,6.6},

{8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9,1.4,7.3},

{9.1,8.5,6.7,4.3,2.1,0.8,0.2,0.2,1.1,2.3,6.1,8.4},

{7.2,9.9,8.4,3.3,1.2,0.8,0.4,0.0,0.6,1.7,4.3,6.2},

{7.6,5.6,3.8,2.8,3.8,0.2,0.0,0.0,0.0,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 each year, sum rainfall for each month

for (month = 0, subtot = 0; month < MONTHS; month++)

subtot += *(*(rain + year) + month);

printf("%5d %15.1fn", 2000 + year, subtot);

total += subtot; // total for all years

}

printf("nThe yearly average is %.1f inches.nn",

total / YEARS);

printf("MONTHLY AVERAGES:nn");

printf(" Jan Feb Mar Apr May Jun Jul Aug Sep Oct ");

printf(" Nov Decn");


for (month = 0; month < MONTHS; month++)

{       // for each month, sum rainfall over years

for (year = 0, subtot = 0; year < YEARS; year++)

subtot += *(*(rain + year) + month);

printf("%4.1f ", subtot / YEARS);

}

printf("n");


return 0;

}

Recently Asked Questions

Why Join Course Hero?

Course Hero has all the homework and study help you need to succeed! We’ve got course-specific notes, study guides, and practice tests along with expert tutors.

-

Educational Resources
  • -

    Study Documents

    Find the best study resources around, tagged to your specific courses. Share your own to gain free Course Hero access.

    Browse Documents
  • -

    Question & Answers

    Get one-on-one homework help from our expert tutors—available online 24/7. Ask your own questions or browse existing Q&A threads. Satisfaction guaranteed!

    Ask a Question