C语言入门Day_20 函数的定义

目录

前言:

1.函数的命名

2.函数参数

3.返回值 

4.易错点

5.思维导图


前言:

上次课我们学了函数的定义和使用,今天我们来详细学习一下函数的定义的各个细分部分。

C语言入门Day_20 函数的定义_第1张图片

函数就像一个有魔法的盒子,我们输入瓶装水的原材料(瓶子和水),通过有魔法的盒子(生产线和生产过程),就能得到瓶装水的成品。 

函数的定义制作这个有魔法的盒子的过程,它包含了这样几个部分:函数名,函数参数,函数代码,函数返回值等等。

我们一一来学习它们,首先是函数的命名

1.函数的命名

1.1

函数的命名规范和变量是一致的,只能使用字母,数字,下划线,且不能用数字开头。

一个好的函数命名,最好能从名字看出函数的功能,

比如AddThree()PrintFiveTimes()

同时我们还鼓励使用字母单词首字母大写的形式来跟函数命名,这也是变量命名的风格不一样的地方。

1.2

我们来看看函数的命名部分:

void PrintFiveTimes (int number_a)

函数命表示的函数便是使用printf函数打印"number_a"的值五次。

int AddThree(int number_a)

函数命表示的函数便是在原来的基础上加三。

函数名是标识一个函数的重要部分,我们在调用一个函数的时候,首先需要的就是这个函数的函数名。

1.3

这是函数名的一些注意事项

C语言入门Day_20 函数的定义_第2张图片

2.函数参数

2.1

接下来是函数的参数,函数的参数是给函数的输入部分,类似魔法盒的原材料输入部分,水和空瓶子。 

C语言入门Day_20 函数的定义_第3张图片

我们之前学习的自定义函数只有一个参数,实际上C语言是支持多个函数参数的,多个函数参数需要以英文逗号隔开,同时每个参数也需要带自己的数据类型。 

2.2

我们定义一个把两个整型数字相加的函数AddTwoNumber()

int AddTwoNumber(int number_a,int number_b)
{
  int mumber_c=number_a+number_b;
  return number_c;
}

1.函数返回类型  int

2.函数名  AddTwoNumber

3.函数的第一个参数  num_a,类型是整型

4.函数的第二个参数  num_b,类型是整型

5.两个函数参数 int a与b 之间用逗号隔开

6.中括号内为 函数体部分

2.3

C语言函数是可以没有参数的,这类函数在教科书中经常被称为无参数函数,简称无参函数,无参函数就没有数据输入,它只会执行特定的功能,以及输出一些数据或者执行一些功能。

比如打印五行下划线: 

void PrintFiveTimes()
{
    printf("__\n");
    printf("__\n");
    printf("__\n");
    printf("__\n");
    printf("__\n");
}

int main() {
    PrintFiveTimes();
    return 0;
}

函数定义中的参数,在教科书中又被称为形式参数,意思是它没有具体的值,是一个“形式”的参数,简称形参。 

2.4

函数定义中最核心的部分是函数的代码,又称函数体。它承载了具体的函数功能,我们可以在这里面实现我们想赋予函数的功能。

就像魔法的加工盒给水瓶灌入水,并且贴上标签一样

C语言入门Day_20 函数的定义_第4张图片

3.返回值 

3.1

函数体内部的代码写法其实和函数外没有太大区别,是一个供大家自由创作的领域。只不过写完函数代码以后,我们大多数时候需要一个返回值来向外输出数据。

函数的参数,是外界对函数的输入部分;函数的返回值,是函数对外界的输出部分。

完整的函数返回值包括三部分

1、函数返回值的类型;

2、函数返回值的关键字return; 

3、返回的具体数值

3.2

函数返回值由关键字return和具体的数值共同组成

例如:

int AddThreeNumber(int num_a, int num_b, int num_c)
{
    int number_d = num_a + num_b + num_c;
    return number_d;
}

1.函数返回值的类型,这里是整型  int

2.函数返回值的关键字  return

3.函数返回值的具体数值  number_d

4.函数返回值的三部分,类型  int,关键字  return,具体数值  number_d。

3.3

需要注意的是,返回值的数据类型,和函数定义里面写的数据类型需要保持一致,否则程序会报错,比如我们定义的时候写的int,但我们返回了一个字符型数据,程序就会报错

当然,我们也可以定义一个不返回任何值的函数,这时候我们需要使用void,同时在函数体的代码中,不返回任何值。这种函数在教科书中叫做无返回值函数

4.易错点

C语言入门Day_20 函数的定义_第5张图片

eg:

返回值的数据类型,和函数定义里面写的数据类型需要保持一致,否则程序会报错

eg:

void关键字定义无返回值函数。

eg:

形式参数只有在函数被调用的过程中才实例化(分配内存单元),所以叫形式参数。因此形

式参数只在函数中才有效

eg:

实参可以是:常量、变量、表达式、函数等。在调用函数时,它们都必须有确定的值,以

便把这些值传送给形参

5.思维导图

C语言入门Day_20 函数的定义_第6张图片

最后我想说的是:

 在撰写这篇文章时,我参考了《白纸编程》这个app的观点和思想,我要感谢他们对我的启发和帮助。

你可能感兴趣的:(c语言,开发语言)