关于#保留两位小数#的问题,如何解决?

输入家庭成员的年龄,输出:家人的平均年龄和低于平均年龄的家庭成员的年龄。保留两位小数?
比如:

计算:70 69 46 46 23 21 19 17 14的平均值;
输出:家人的平均年龄为36.11 21 23 19 14 17;


#include<stdio.h>
int main(){
     int n;//家庭成员人数
     int a[100];//年龄数组
     int i,sum=0;
     float temp;//平均年龄
     scanf("%d",&n);
     for(i=0;i<n;i++){
         scanf("%d",&a[i]);
         sum=sum+a[i];
     }
     temp=(float)sum/n;
     printf("%.2f\n",temp);
     for(i=0;i<n;i++){
         if(temp>a[i])
         printf("%d ",a[i]);
     }
}

用%.2f来输出。参考代码如下:

#include <stdio.h>
int main() {
    double a = 100;
    double b = 99;

    printf("%.2f\n",(a+b)/2);

    return 0;
}

运行结果:

% gcc calc_test.c
% ./a.out
99.50