C語言算法題,統計個年齡段的人數0~ 9,10~19.。。。。分別放置到數組b[0],b[1]…
#include<stdio.h>
#define N 50
#define M 11
void fun(int *a,int *b){
//將a數組當中的數據統計到b數組當中
int i,j;
for(j=0;j<M;j++){
b[j]=0;
}
for(i=0;i<N;i++){
if(a[i]>=100){
b[10]++;
}else{
b[a[i]/10]++;//將a數組的數據除以10 的餘數自增後添加到b數組當中
}
}
}
double rnd(){
static t = 29,c = 217,m=1024,r=0;
r=(r*t+c)%m;
return ((double)r/m);
}
void main(){
int age[N],i,d[M];
for(i=0;i<N;i++)
age[i]=(int)(115*rnd());//生成N個整數類型的隨機數
for(i=0;i<N;i++)
printf((i+1)%10==0? "%4d\n":"%4d",age[i]);//
printf("\n\n");
fun(age,d);
for(i=0;i<10;i++)
printf("%4d -- %4d: %d\n",i*10,i*10+9,d[i]);
printf("Over 100: %d\n",d[10]);
}