河岸柳 发表于 2021-7-28 08:43:03

一个弱智的问题

为啥要输入6个数字才能计算出结果,而且输出结果还不对?{:10_266:}

要求:输入三位整数,输出他们的平均数,保留三位小数
代码如下:
#include<stdio.h>
#include<math.h>

int main()
{
        int a,b,c;
        float result;
       
        scanf("%d %d %d\n",&a,&b,&c);
       
        result=(a+b+c)/3;
       
        printf("%.3f\n",result);
       
        return 0;
}

青出于蓝 发表于 2021-7-28 08:43:04

河岸柳 发表于 2021-7-28 09:17
但是如果只输入三个数还是不能得到结果,必须要输入四个及以上才可以,为啥啊

因为你scanf里面内容有个换行符
我的代码就没问题

青出于蓝 发表于 2021-7-28 08:56:09


#include<stdio.h>
#include<math.h>

int main()
{
      int a,b,c;
      float result;
      
      scanf("%d%d%d",&a,&b,&c);
      
      result=(float)(a+b+c)/3;
      
      printf("%.3f\n",result);
      
      return 0;
}

青出于蓝 发表于 2021-7-28 08:56:39

直接除是整除,可以在前面加(float)

河岸柳 发表于 2021-7-28 09:17:32

青出于蓝 发表于 2021-7-28 08:56
直接除是整除,可以在前面加(float)

但是如果只输入三个数还是不能得到结果,必须要输入四个及以上才可以,为啥啊{:10_269:}
页: [1]
查看完整版本: 一个弱智的问题