本文主要是介绍C PRIMER PLUS(第六版编程练习)10.13编程练习_1题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/*修改程序清单10.7的rain.c程序,用指针进行计算(仍然要声明并初始化数组)。*/
#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;float * p1;p1 = rain;printf("YEAR RAINFALL (inches)\n");for (year = 0, total = 0; year < YEARS; year++){for (month = 0, subtot = 0; month < MONTHS; month++){subtot += *p1;p1++;}printf("%5d %15.1f\n", 2010 + year, subtot);total += subtot;}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");;p1 = rain;//p1 = rain;//printf("*p1=%f", *p1);for (month = 0; month < MONTHS; month++){for (year = 0, subtot = 0; year < YEARS; year++){//subtot += *(*(rain + year) + month);subtot += *p1;p1 += MONTHS;}printf("%4.1f\t", subtot/YEARS);p1 = rain;p1 += month+1;}return 0;
}
这篇关于C PRIMER PLUS(第六版编程练习)10.13编程练习_1题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!