c语言初学者:编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第

c语言初学者:编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位进行四舍五入,最后输出结果

#include<stdio.h>
void main(){
    int i,j;
    double x,y,z,ave;
    printf("请输入三个数:");
    scanf("%lf %lf %lf",&x,&y,&z);
    ave=(x+y+z)%3.0;
    i=ave*100;
    i=i%10;//得到小数点百分位上的数
    j=ave*10;
    if(i>=5){
        j+=1;
        ave=(double)j/10;
    }else{
        ave=(double)j/10;
    }
    
    printf("ave=%.1f\n",ave);
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-03-30
#include <stdio.h>
int main(int argc, char *argv[])
{
    double a, b, c;
    double v;
    
    scanf("%lf %lf %lf", &a, &b, &c);
    
    v = (a + b + c) / 3;
    v = (long)(v * 10 + 0.5) / 10.0;
    
    printf("%f\n", v);
    return 0;
}

本回答被提问者和网友采纳
相似回答