C语言新手小白详细教程(6)函数

意疏 2024-08-17 15:35:05 阅读 71

在这里插入图片描述

🌏个人博客主页:意疏

在这里插入图片描述

希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 + 关注+ 收藏支持一下笔者吧~

阅读指南:

开篇说明为什么要使用函数?1.定义一个函数2.初步调用函数3.定义函数详解3.形式参数与实际参数4.使用return接收函数的返回值5.函数声明


开篇说明

截止目前,我们已经可以完成很多C语言的程序了,但这些程序都比较简单。如果你需要完成一个功能复杂的大项目,仍然按照目前的方法,所有代码平铺,从阅读和维护就会变得十分困难。所以我们引入了函数这个概念。

函数:完成特定人物的独立程序代码单元

为什么要使用函数?


省去编写重复代码的功夫

例如之前学过的输入函数 scanf()和输出函数printf(),当我们需要执行输入输出任务时,不需要每次都编写完整的输入输出代码,只需要调用这两个函数即可。可以让程序更加模块化

即使只完成某项人物一次,也值得使用函数,因为函数让程序更加模块化,从而提高了代码的可读性。更方便后期修改,完善。


1.定义一个函数

所有在程序中用到的所有函数,都必须“先定义,再使用”

定义无参数函数

结构为:

类型名 函数名()

{

函数体

}定义有参数函数

结构为:

类型名 函数名(形式参数列表)

{

函数体

}


2.初步调用函数

我们学习函数的目的就是为了调用函数,也就是使用函数。

调用函数的一般形式为:函数名(实参列表);

注:实参列表可以没有,但括号不可以省略

例:

创建一个在一行打印40个星号的函数,并在一个打印表头的程序中使用该函数。

我们应该先定义一个函数,并在一个打印表头的程序中使用该函数。

然后编写一个主函数,在主函数中调用这个打印星号的函数。

<code>

#include <stdio.h>

void starbar()

{

int i;

for(i=1;i<=40;i++)

{

printf("*");//循环输出40个星号

}

printf("\n");//换行

}

int main()

{

starbar();//调用函数starbar()

printf("name:\n");//输出提示信息

printf("Address:\n");//输出提示信息

printf("Number:\n");//输出提示信息

return 0;

}

输出结果是这样子的:

在这里插入图片描述


3.定义函数详解

我们定义函数时,需要什么,定义什么就可以了

类型名 函数名(形式参数列表)

{

函数体

}

类型名:和定义变量一样,告诉计算机你定义的类型是什么(int,char);并且你定义的函数会实现一些功能,实现了之后是否会返回(输出)一个结果,如果需要返回的,那么这个结果的类型是什么。函数名:起名字 等后面调用时调用。形式参数列表:定义函数所实现的功能,是否需要输入,如果需要就定义一个有参函数,不需要就定义一个无参函数。函数体,你需要实现的功能,和编写普通程序一样

1.定义一个无形式参数的函数

在这里插入图片描述

这个函数实现了一个打印特定语句“这是一个分割线的功能”不需要参数没有返回值,类型名就是void


输出结果是这样子的:

在这里插入图片描述


2.定义一个有形式参数的函数

在这里插入图片描述

输出结果是这样子的:

在这里插入图片描述

这个函数的打印语句有一个变量num,这个变量来自形式参数列表。不同的参数会打印出不同的结果没有返回值,类型名就是void


3.定义一个有形式参数也有返回值的函数

在这里插入图片描述

输出结果是这样子的:

在这里插入图片描述

这个函数的功能是比较a 和 b 的大小,并返回大的那一个。比较的变量来自参数列表比较的结果用return返回,这时类型名和返回值的类型一样,这里返回的值为int,所以类型名就是int。

3.形式参数与实际参数

形式参数:定义函数时参数列表那里的参数,简称形参。实际参数:调用函数时,实际传进去的参数,简称实参。

我们在调用函数时,计算机会将实参的值传递给被调用函数的形参,然后执行函数

注:形参和实参之间的传递是值传递

例:

在这里插入图片描述

输出结果是这样子的:

在这里插入图片描述

4.使用return接收函数的返回值

我们在上面的例子中已经使用了return 我们现在详细讲解一下

return出现的位置是在定义函数时,作用是将函数执行的结果返回当函数有返回值时,在调用函数的时候,需要用一个变量接收返回值使用return有两个数据类型需要注意

定义函数时,函数的类型要和返回值类型一致;调用函数时,接收返回值的变量,需要和返回值类型一致。

我们如果返回了一个最大的int型,那么我们在实际调用时,就需要定义一个int型的maxnum变量来接收。

5.函数声明

在C语言中,我们使用函数,就需要提前对函数进行声明,就像是提前和计算机打招呼,让他做好准备。

如果使用printf()等库函数的话,我们就需要在程序开头使用#include指令如果我们使用我们自己定义的函数,声明方式如下

函数类型 函数名(形参列表);

我们将函数定义在main函数之前的话,由于C语言顺序执行的特点,在使用计算机时就见过这个函数了,所以不声明也可以。

如果你将函数定义在了main函数之后的话,那么函数就需要声明。


意气风发,漫卷疏狂

学习是成长的阶梯,每一次`的积累都将成为未来的助力。我希望通过持续的学习,不断汲取新知识,来改变自己的命运,并将成长的过程记录在我的博客中

如果我的博客能给您带来启发,如果您喜欢我的博客内容,请不吝点赞、评论和收藏,也欢迎您关注我的博客。

您的支持是我前行的动力。听说点赞会增加自己的运气,希望您每一天都能充满活力!

愿您每一天都快乐,也欢迎您常来我的博客。我叫意疏,希望我们一起成长,共同进步。

logo

我是意疏 下次见!



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。