这里写目录标题
一 函数的参数
1 形式参数
定义
函数的形式参数指函数名括号后的变量
为什么叫形式参数
因为它只有被函数调用的时候才会实例化(开辟内存单元)
存在范围
当函数调用完毕之后就自动销毁了 所以形式参数只在函数中有效
2 实际参数
定义
真是传递给函数的参数 叫做形式参数
类型
必须是常量 变量 常量表达式 函数等
无论是什么类型在函数调用的时候实际参数都必须有一个确定的值
二 函数的声明与定义
注意点
如果函数是在后面定义的 那么如果想在前面使用就必须声明一下函数
int main()
{
int a = 3;
int b = 5;
int s = Add(a, b);
printf("%d", s);
return 0;
}
int Add(int x, int y)
{
return x + y;
}
例如以上代码 想要使用的话就必须在前面声明一下这个函数
int Add(int, int);
记得要在后面加上分号
声明头文件
头文件中放什么?
存放函数的声明 类型的定义 头文件的包含
自己写的头文件和系统头文件引用有什么区别?
自己写的头文件要用双引号引用 系统的头文件使用<>引用
三 初识递归
写一个最简单的递归函数
int main()
{
printf("1\n");
main();
return 0;
}
main()函数不停调用自身的过程 这就是一个简单的递归
使用递归函数来实现按照顺序打印1234
题目分析:递归的主要思想就是大事化小
要想顺序打印1234 那么可以想象成打印 123 加上一个4
又可以想象成打印12 加上一个3 一个4
又可以想象成打印1 加上一个2 一个3 一个4
了解到这些之后呢我们就可以开始着手写代码了
void print(int n)
{
if (n>9)
{
print(n / 10);
printf("%d ", n % 10);
}
else
{
printf("%d ", n % 10);
}
}
int main()
{
int n = 1234;
print(n);
return 0;
}
实现代码如上
解释原理如下
在文章的最后由上面的代码和图引申出递归的两个条件
1 要有限制条件 在限制条件达到时候停止“递” 开始“归”
2 每次递归要不断的接近限制条件
本文含有隐藏内容,请 开通VIP 后查看