1.为什么要用函数
a)函数能够增加程序的可读性
b)提高开发的效率
c)可以重复使用和在各种适用情况下使用
void swap(int *a,int *b)
{
int t;
t=a;
a=b;
b=t;
}
这段代码适用于任何想要交换数字的时候,节省了时间。
2.为什么要用函数重载
a)解决了命名冲突问题,增加了可读性.
b)减少了用户的复杂性
void a();
void a(int);
void a(float,float);
void a(constchar*,constchar*);
void Max(int,int);
intmain()
{
a(2.4);
return;
}
函数重载可以优先选出想要应用的函数
3.什么是值传递
a)值传递是指只将要使用的值传入函数,而不改变值本身.就是指将一个实参传递给一个形参.
#include<stdio.h>
void change(int num)
{
num=0; //修改参数
}
int main()
{
int a=1;
change(a); //调用函数
printf("%d",a);//输出变量,变量的值没改变
return 0;
}
4.什么是地址传递
a)地址传递是指将实参的地址传给函数,可以在函数里面改变实参的值
#include<stdio.h>
void change(int *num)
{
num=0; //修改参数
}
int main()
{
int a=1;
change(a); //调用函数
printf("%d",a);//输出变量,变量的值改变了
return 0;
}
5.递归调用
a)明确函数作用
b)寻找结束条件
c)找出函数等价关系式
int fib(int n){
if(n <= 2){
return n;
}
// 结束条件
return fib(n-1) * n;
}
此为斐波拉契数列递归实现的方法,函数的作用是计算出两项的乘积,结束条件是当n小于等于2,等价关系为最后一条代码.
来源:https://www.cnblogs.com/-lyn/p/11498551.html