#include <stdio.h>
#define MONTHS 12
#define YEARS 5
int main(void)
{
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(month=0,subtot=0;month<MONTHS;month++)
subtot +=rain[year][month];
printf("%5d %15.1f\n",2000+year,subtot);
total += subtot;
}
printf("\nThe yearly average is %.1f inches.\n",total/YEARS);
printf("MONTHLY AVERAGES: \n\n");
printf(" Jan Feb Mar Apr May Jun Jul Aug Sep Oct ");
printf(" 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");
printf("详细清单:");
printf("\n");
for(year=0;year<YEARS;year++)
{
for(month=0;month<MONTHS-1;month++)
printf("%.1f, ",rain[year][month]);
printf("%.1f",rain[year][MONTHS-1]);
printf("\n");
}
printf("\n");
printf("行列调换后的详细清单:");
printf("\n");
for(month=0;month<MONTHS;month++)
{
for(year=0;year<YEARS-1;year++)
printf("%.1f, ",rain[year][month]);
printf("%.1f",rain[YEARS-1][month]);
printf("\n");
}
return 0;
}