自定义函数声明void表明函数无返回值,但不决定自定义函数是否有参数,这是两回事
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了克山免费建站欢迎大家使用!
如void fun(int a, int b) { ... ... }函数带参数,但无返回值
若声明类型为void fun(void) { ... ... }或void fun() { ... ... }则表明函数既没有参数,也没有返回值
若为float fun(int a, int b) { ... ... }表明函数有返回值,返回值类型为float,函数也带参数
若为float fun(void) { ... ... }表明函数有返回值,返回值类型为float ,不带参数
明白了吗?
从参数角度分类:1.有参函数:函数有形参,可以是一个,或者多个,参数的类型随便,完全取决于函数的功能。2.无参函数:函数没有参数,在形参列表的位置写一个viod或什么都不写。
每个C程序都至少有一个函数,即主函数main(),如果程序的任务比较简单,全部的代码都写在main()函数中,但是,在实际开发中,程序的任务往往比较复杂,如果全部的代码都写在main()函数中,main()函数将非常庞大臃肿,结构复杂,代码重复。
详细信息:
我们可以根据程序的逻辑和任务的分工把代码划分到不同的自定义函数中,main()更关心业务逻辑和处理流程,需要执行具体任务的时候,调用这些自定义的函数就可以了。
为了方使理解,我们把函数分为两种:一种是库函数,一种是自定义函数。库函数是C语言提供的,或系统提供的,实现了某些基本的功能,例如scanf、printf,在程序中可以直接使用。
自定义函数是程序员为了完成某项任务而编写的函数,目的是为了实现某项的功能或让主程序更简洁。程序员在使用自定义函数之前,必须先声明和定义。
自定义函数是由用户按需要写的函数。这与库函数相对应的,库函数是由c系统提供的函数,已经定义好了如printf
、
scanf
、
getchar
、putchar、gets、puts、strcat等函数均属此类。
说白了,自定义函数是是自己写的,想实现什么功能就写什么,然后在用的时候和库函数(系统定义的)的一样调用就是了,相当于自己增加了一个自己的库函数。
所有自己写的函数 都属于自定义函数。
也就是你自己实现的函数都算。
除了main 除了库函数,其他的 都属于自定义函数。
就是不需要参数,在调用的时候不需要传递参数
例如自己定义一个void fun(void){};
这就是返回值为空 参数为空 函数名为fun的函数
在c语言中void可以省略 但是一般省略参数 不省略返回值
调用的时候使用fun();就可以了
1.函数中的return语句是用来获得函数的返回值的,通过它将被调函数的中一个确定值带回主函数,供主函数使用。
2.定义函数的类型是一般应该与return语句的返回值的类型一致。如果不同,则以函数类型为准。
看看这个题(编写函数求Fibonacci级数)
#include "stdio.h"
int fib(int n)
{
int z;
if(n=0) printf("有误");
else
if(n==1||n==2) z=1;
else
z=fib(n-1)+fib(n-2);
return(z);
}
void main(){
int n,i;
for(n=1,i=0;n=100;n++){
{printf("%10d ",fib(n));
i++;}
if(i%5==0) printf("\n");}
}