美文网首页
C语言教程(006)-认识第一个C语言程序(中·函数的概念)

C语言教程(006)-认识第一个C语言程序(中·函数的概念)

作者: 爱学习的老周 | 来源:发表于2019-09-15 17:13 被阅读0次

函数的概念

​ 讲函数之前,先粗略地讲一下什么叫变量:

你打游戏的时候,你的人物被怪打了,血条会减少,血条为0时,人物会死亡,有的游戏支持人物复活。血条就是一个变量,人物的死,和活,也是变量。变量是参与程序流程的量。变量有很多类型,比如整型,也就是整数类型,可以用在人物的血条上;布尔型,只有真和假,可以用在人物的死或活上。等等。

​ 有一天你很想吃饺子(别问为什么,想吃就对了),于是你打算自己做饺子。

​ 当你开始做这件事的那一刻,你就已经进入了主函数,函数名为main

  • 主函数是一个程序的入口,必须有,且只能有一个。
  • 主函数的函数体囊括了一个程序的全部流程。即任何一个程序都从主函数开始,在主函数里结束
  • 再次强调C语言严格区分大小写,例如如果你写成Main,那就是一个自定义函数了。

​ 你做饺子的过程分为大致分为以下几个步骤:

1、去菜市场买食材,即肉,面粉等。

2、把肉剁碎,和面并擀成饺子皮。

3、包饺子。

4、下锅。

​ 吃了饺子之后,你对自己的手艺很满意,你觉得自己也可以开一家饺子馆(就是这么膨胀),但是你想到将来每天需要做这么多饺子,老方法效率太低,肯定忙不过来。你打算制造一个机器,这个机器的功能如下:

  • 机器有三个供料口,分别需要放入肉(整块的就可以)、面粉、水。至于放多少,取决于你需要做多少饺子。
  • 食材到了机器里面,机器会将整块的肉切碎,将水和面粉混在一起,和面擀好并切割成一片一片的饺子皮,然后包饺子
  • 出料口有一个,包好的饺子就从出料口出来。

本质上,函数是两个集合之间的映射关系,也就是自变量和因变量之间的映射关系。

​ 这台包饺子的机器,就是一个函数,它表示食材和饺子的映射关系。

​ 在数学中,一般将自变量用x表示,映射关系表示为f,因变量表示为y=f(x)。

​ 在编程语言中,自变量叫参数,映射关系就是函数,把函数视为一个整体,那么因变量就叫返回值
​ 观察下面这个函数:

int temp(int a, int b, char c)
{
//函数体省略
int d = a + b;
    return d;
}

​ 函数名称前面int就是一种数据类型,叫做整型。它限定了返回值(即因变量y)只能是整数。

​ a, b, c叫做形式参数,简称形参。之所以叫形式参数,是因为它没有具体值,只是一个代号,在你编写函数的时候需要用到它。例如你写一个y=x+1的函数,它代表的是x和y之间的映射关系,而这里的x是个代号,没有具体值。

​ 只有当你调用函数时,才需要给函数传递一个值作用来参与函数体内部的运算,这个实际的值叫做实际参数,简称实参。你将x=5代入函数y=x+1,这个5就是实参。

​ 形参限制了实参的数据类型,例如temp函数第一个参数只能填入整型,第二个也是,第三个只能是字符。就好像放肉的供料口只能肉,放面粉的供料口只能放面粉。但是放多少肉,多少面粉,取决于实参大小。

​ 如果一个函数没有返回值,则在函数名称前用void取代int。就好比你有一个垃圾分类机器,你并不关心被处理掉的垃圾去了哪里,那就不需要让它有返回值。

​ 一般我们并不会自己制造一个包饺子的机器,因为很多机器功能强大,结构复杂,制造它远远超出了我们的能力范围,所以大概率上会去买一个。相似的是,很多函数也都不是我们自己写的,C语言的开发人员已经为我们实现了大部分常见的基本功能,这样的函数体对于我们来说是一个“黑箱”,我们不需要知道它内部是如何实现的,而只需要会用就可以了。这并不意味着你不需要对它有任何了解,最起码你需要知道哪个供料口放肉,哪个放水,哪个放面粉等等。我们写的第一个程序中,printf()就是这样的一个函数。

​ C语言自带的函数称为库函数(Library Function)。库(Library)是编程中的一个基本概念,可以简单地认为它是一些列函数的集合,在磁盘上往往是一个文件夹。C语言自带的库称为标准库(Standard Library),其他公司或个人开发的库称为第三方库(Third-Party Library)。

​ 函数就是一段可以独立完成某个功能,并且可以重复使用的代码片段,函数的使用可以大大提升开发效率。每一个函数的名称都是独一无二的,函数的格式如下:

返回值类型 函数名(形参1, 形参2,...)
{
    //函数体;
}

函数的使用叫做函数调用,调用函数的格式为函数名称(实参1, 实参2,...);

相关文章

  • C语言教程(006)-认识第一个C语言程序(中·函数的概念)

    函数的概念 ​ 讲函数之前,先粗略地讲一下什么叫变量: 你打游戏的时候,你的人物被怪打了,血条会减少,血条为0...

  • 编程字典-C语言基础教程源码

    C源码示例C源码示例C语言文件扩展名第一个C程序C语言度量单位转换C语言函数 调试C程序C语言语义错误C实例程序C...

  • C语言入门第一式

    C语言基本概念 1. 第一个C语言程序   在经典的C语言著作The C Programming Languag...

  • C语言系列教程完整版(持续更新)

    下面是C语言所有完整的教程 C语言教程(一):程序开发理论基础 C语言教程(二):开发环境搭建 C语言教程(三):...

  • 第一个C语言程序

    第一个C语言程序: 1)C语言的源程序构成: 由函数构成(面向过程的编程语言的特点) 2)函数先定义才能使用 3)...

  • 2018-08-29日常C笔记

    C语言初学笔记 C语言程序是由函数组成的C语言程序启动时,系统就会自动调用名字叫main的函数C语言规定了函数定义...

  • go 语言第一节课

    第一个 go 语言程序 go 语言与 c 语言的异同点 1.C语言是由于什么组成的?C语言是由函数组成的同样Go语...

  • C语言学习的推荐资料

    学习网站 w3c教程 C语言网 C语言中文网 视频教程 Linux环境C语言程序设计视频教程 C语言入门 推荐书籍...

  • 找不到工作的人还在学习(c++)

    一、程序设计基础概念 1、在c++程序中调用被c编译器编译后的函数,为什么要加extern “C”? c++语言支...

  • 有哪些比较好的 C 语言视频教程推荐?

    全面的C语言教程,可以看黑马程序员C语言教程:轻松掌握C语言视频教程(会打字就能学会);或者是C语言小白入门基础教...

网友评论

      本文标题:C语言教程(006)-认识第一个C语言程序(中·函数的概念)

      本文链接:https://www.haomeiwen.com/subject/nhhtuctx.html