问题及代码:
#include <stdio.h>
#define MAXVAL 20 //学生数量
#define COUNTER 11 //分11组
int main()
{
float value[MAXVAL];//含有20个元素的数组
int i,high,low;
int group[COUNTER]={0,0,0,0,0,0,0,0,0,0,0};//数组的11个元素初始化为0;
for(i=0;i<MAXVAL;i++)
{
scanf("%f",&value[i]);
++group[(int)(value[i]+0.5)/10];//不太明白为何要加0.5 ?
}
printf("\n");
printf("GROUP RANGE FREQUENCY\n");
for(i=0;i<COUNTER;i++)
{
low=i*10;
if(i==10)
high=100;
else
high=low+9;
printf("%2d %3d to %3d %3d\n",i+1,low,high,group[i]);
}
}
运行结果:
知识总结:
数组的书写方式及运用;
学习心得:
在循环中使用数组,简化运算;
注意数组中的[]与{},尤其是{}不能写()。