g1063496360 发表于 2021-4-7 12:48:59

求助一下大佬

#include <stdio.h>                                                       


void main()                                                                                 
{
       float add (float x, float y);                                               
       float a, b, c;                                                               
       scanf("%f+%f", &a, &b);                                               
       c=add(a, b);                                                                       
       printf("sum is %f\n", c);                                                       
}

add (float x, float y)
{
       float z;
       z=x+y;
       return z;
}

像我这样 先声明函数add 然后再定义用 2.3+2.2就会等于5.5

但是如果我先定义再声明得到的却是5 不是5.5这是为什么呢

#include <stdio.h>

add (float x, float y)
{
       float z;
       z=x+y;
       return z;
}

void main()
{

       float a, b, c;
       scanf("%f+%f", &a, &b);
       c=add(a, b);
       printf("sum is %f\n", c);
}

wp231957 发表于 2021-4-7 12:53:31

函数实现时,为啥前面光秃秃的,啥都木有呢,而声明时就有,前后不一致,实在是想不明白啊

g1063496360 发表于 2021-4-7 12:56:22

wp231957 发表于 2021-4-7 12:53
函数实现时,为啥前面光秃秃的,啥都木有呢,而声明时就有,前后不一致,实在是想不明白啊

呀 哈哈哈 刚刚开始学 有些还不懂 现在知道了 谢谢大佬
页: [1]
查看完整版本: 求助一下大佬