return() 到底是干什么的 为什么要返回值 如果不要返回值又如何

#include<stdio.h>
void main()
{
int sum();
int diff();
printf("%d+%d=%d\n",5,3,sum(5,3));
printf("%d-%d=%d\n",6,4,diff(6,4));
}
int sum(int x,int y)
{
int sum;
sum=x+y;

}
int diff(int x,int y)
{
return(x-y);
}C语言环境下 说缺少返回值 但是运算结果没错 什么是返回值啊

返回值就是函数返回给调用者的一个值,这个值往往是:计算结果、调用是否成功之标志等等内容。可以是内置的类型,也可以是自定义的类型。
Void表示不需要返回值。
而其它在函数声明前面的类型即表示返回什么类型的值,如int p(),表示返回int类型。 你的函数sum中,没有给出返回值,所以会报错的
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-12
#include<stdio.h>
void main()
{
int sum(int x,int y);
int diff(int x,int y);
printf("%d+%d=%d\n",5,3,sum(5,3));
printf("%d-%d=%d\n",6,4,diff(6,4));
return ;
}
int sum(int x,int y)
{
int sum;
sum=x+y;
return sum ;

}
int diff(int x,int y)
{
return(x-y);
}/*应该这样写才对吧,是否要返还一个返还值,取决于你的函数的定义类型
比如说你写的是int diff(int x,int y) ; 是 int 的整型类型,所以就要返还一个整型的数据给操作系统,
或者像主函数你定义的是 void 无值型 所以就不需要返还值 所以后面就可以写成 return ;或者什么都不写
如果你定义的是 float 浮点型的话 就需要返还一个浮点型的数据 不能是整型的等等其他数据类型
其他类型的同理本回答被网友采纳
第2个回答  2014-03-08
因为void main() void不是返回值类型么,void是空的意思,也就是没返回类型。但是你在程序里return(x-y);是返回一个值,所以可以改成,int main()
相似回答