函数
我们来看一个程序求出1到10、20到30和35到45三个的和
#include <stdio.h>
int main( )
{
int i;
int sum;
for ( i=1,sum=0; i<=10; i++ ) {
sum += i;
}
printf(""%d到%d的和是%d\n",1,10,sum) ;
for ( i=20,sum=; i<=30; i++ ) {
sum += i;
}
printf("%d到%d的和是%d\n",20,30,sum);
for ( i=35,sum=0; i<=45; i++ ) {
sum += i;
}
printf("%d到%d的和是%d\n",35,45,sum);return 0;
}
我们可以看到在上面我们有三段一样的代码。虽然这可以实现我们的功能但是当妈可读性很低。在C语言中我们有更好的解决方法那就是使用函数。
使用函数的程序:
#include <stdio.h>
void sum( int begin, int end){
int i;
int sum =0;
for ( i=begin; i<=end; i++ ) {
sum += i;
}
printf ( "%d到%d的和是%d\n" , begin, end,sum) ;
}
int main( ){
sum(1,10);sum(20,30);sum(35,45);
return 0;
}
函数
函数是一块代码,接收零个或多个参数,做一件事情,并返回零个或一个值。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数。
函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主体。
C语言自带的函数称为库函数(Library Function)。库(Library)是编程中的一个基本概念,可以简单地认为它是一系列函数的集合,在磁盘上往往是一个文件夹。C语言自带的库称为标准库(Standard Library),其他公司或个人开发的库称为第三方库(Third-Party Library)。
定义函数
C 语言中的函数定义的一般形式如下:
return_type function_name( parameter list )
{
body of the function
}
在 C 语言中,函数由一个函数头和一个函数主体组成。下面列出一个函数的所有组成部分:
- 返回类型:一个函数可以返回一个值。return_type 是函数返回的值的数据类型。有些函数执行所需的操作而不返回值,在这种情况下,return_type 是关键字 void。
- 函数名称:这是函数的实际名称。函数名和参数列表一起构成了函数签名。
- 参数:参数就像是占位符。当函数被调用时,您向参数传递一个值,这个值被称为实际参数。参数列表包括函数参数的类型、顺序、数量。参数是可选的,也就是说,函数可能不包含参数。
- 函数主体:函数主体包含一组定义函数执行任务的语句。
调用函数
函数名(参数值); ()
起到了表示函数调用的重要作用
即使没有参数也需要()
如果有参数,则需要给出正确的数量和顺序
这些值会被按照顺序依次用来初始化函数中的参数
函数中的返回值
return停止函数的执行,并送回一个值
return;
return表达式;
实例:
#include <stdio.h>
/* 函数声明 */
int max(int num1, int num2);
int main ()
{
/* 局部变量定义 */
int a = 100;
int b = 200;
int ret;
/* 调用函数来获取最大值 */
ret = max(a, b);
printf( "Max value is : %d\n", ret );
return 0;
}
/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2)
{
/* 局部变量声明 */
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
我们声明了一个名为max的函数,并在main函数中使用mret=max(a,b);
来调用。并在max函数中使用return 来返回两个数中较大的数。