注册 登录
编程论坛 C语言论坛

结果为什么是0呀 看不出来哪里错了

JJGA 发布于 2021-04-11 21:18, 1613 次点击
#include<stdio.h>
void main()
{
    int x,y;
    float ave;
    float average(int a,int b);
    printf("please input the value of x,y:\n");
    scanf("%d,%d",&x,&y);
    ave=average(x,y);
    printf("(%d+%d)/2.0=%d\n",x,y,ave);
}
    float average(int a,int b)
    {
        float c;
        c=(a+b)/2.0;
        return c;
    }
2 回复
#2
夏天q2021-04-11 22:54
printf("(%d+%d)/2.0=%d\n",x,y,ave);
中的最后一个%d改为%f,因为ave为float类型
printf("(%d+%d)/2.0=%f\n",x,y,ave);
#3
JJGA2021-04-19 20:37
回复 2楼 夏天q
hh 谢啦 我一直以为2后面加个.0就好了
1