函数的定义和调用
python中定义一个函数使用(define的缩写)关键字,语法格式如下:
具体功能:打印10次"好好学习,天天向上"
这种方式直观简单,但是不够灵活,如果改变打印内容,打印次数,都需要重新编写代码。通过定义一个函数就可以完美的解决这些问题。
我们在前面的学习中已经多次使用过函数,例如:
定义好函数后,通过函数名加小括号就可以调用函数。
,调用时传入对应的参数,所以会打印10次,但这次传递的打印次数为3。是不是比之前的方式灵活很多。

函数的定义与参数(初学者)
在定义函数时要用“类型标识符”指定函数值的类型,即函数带回来的值的类型。
类型标识符 函数名(形式参数表列)
注:定义函数时不写类型标识符时,系统默认为int。
调用此函数时,什么工作也不做,没有任何作用。但其在程序开发时作为一个虚设部分常常也是很有用的。
形式参数:在定义函数时函数名后面括号中的变量名称称为形式参数(简称形参)。
实际参数:主调函数中调用一个函数时,函数名后面括号中的参数称为实际参数(简称实参),即实参出现在主调函数中。
大多数情况下,主调函数和被调用函数之间有数据传递的关系。
return后面括弧中的值()作为函数带回的值(称函数返回值)。
在不同函数之间传递数据,可以使用的方法:
返回值:用return语句返回计算结果。
全局变量:外部变量(不提倡使用)。
(1)在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的储存单元。只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。
(2)实参可以是常量,变量或表达式。
但要求它们有确定的值。在调用时将实参的值赋给形参。
(3)在被定义的函数中,必须指定形参的类型。
(4)实参与形参的类型应相同或赋值兼容。
(5)在C语言中,实参向对形参的数据传递是“值传递”(相当与copy),单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中,实参单元与形参单元是不同的单元。
函数的定义与调用
1.函数的定义:函数的定义就是对函数所要完的操作进行描述,即编写一段程序,使该段程序完成函数所指定的操作。一般函数需要先定义后使用。没有定义的函数不能使用。
-除主函数外的函数不能单独运行,这些函数可以被主函数或其他函数调用,也可以条用其他函数,但不能调用主函数。
2.函数的调用:程序中使用已经定义好的函数,成为函数调用。定义函数的目的是为了使用这个函数,因此要学会正确使用这个函数。如果函数A调用函数B,则称函数A为主调函数,函数B为被调函数。
函数参数:函数调用作为一个函数的实参。
例如:z=max(max(a,b),c);
其中max(a,b)是一次函数调用,它的值作为max另一次调用的实参。z的值时a,b,c三者中的最大者。
/*在这里补充一下形参与实参的区别,我借用一下百度上一位用户的回答:
单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。函数调用结束返回主调用函数后则不能再使用该形参变量。2、实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使参数获得确定值。3、实参和形参在数量上,类型上、顺序上应严格一致,否则就会发生类型不匹配的错误。4、在一般传值调用的机制中只能把实参传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参值发生改变,而实参中的值不会变化。而在的机制当中是将实参引用的地址传递给了形参,所以任何发生在形参上的改变实际上也发生在实参变量上。
函数调用中:所有函数都是平行的,即在定义函数时是分别进行的,是互相独立的。一个函数并不从属于另一函数,即函数不能嵌套定义。函数间可以互相调用,但不能调用main函数。main函数是系统调用的。
在程序中调用被调函数时,需要满足以下三个条件。
①首先被调用的函数必须是已经存在的函数(是库函数或用户自己定义的函数)。但光有这一条还不够。
②如果使用库函数,还应该在本文件开头用#include命令将调用有关库函数时所需用到的信息“包含”到本文件中来。
③如果使用用户自己定义的函数,且该函数与对该函数的调用函数在同一个原文件中,特别是函数中调用的函数,该函数的位置在调用它的函数(即主调函数)的后面,应该在主调函数中对被调用的函数作声明。声明的作用是把函数名,函数参数的个数和参数类型等信息通知编译系统,以便在遇到函数调用时,编译系统能正确识别函数并检查调用是否合法。一个函数一般要经过声明才能使用(就好像变量一样必须先声明才能使用),除非它在调用它的前面定义。
相关资讯
函数的概念与性质
函数的引入重要前提是有个对变量的定义。其就是一个映射,只不过两个集合有要求,是实数集及其子集,函数的产生是伴随着微积分的产生,起于对变化和运动的数学的描述的追求。 需要注意的......