第九章知识点总结
1使用函数三步:函数原型 使用函数 函数定义
2 递归的基本原理:每级函数都有自己的变量,及第一级的N和第二级的N不相同
每次函数调用都会返回一次
递归函数中位于递归函数之前的语句均按照被调函数的顺序执行
递归函数中位于递归函数之后的语句按照被调函数相反的顺序执行
虽然每级递归都有自己的变量,但是并没有拷贝函数的代码
递归函数中必须包含能让递归停止的语句
3 递归的坏处:每次递归都会创建一组新的变量,所以递归占用的空间较大。
每次函数调用都会花费一定的时间,效率比较低。
4 递归适合计算倒序
void to_binary(unsigned long n);
int main()
{
unsigned long number;
printf("请输入一个十进制数字:\n");
while (scanf("%lu", &number) == 1)
{
printf("这个数的二进制表示为:");
to_binary(number);
putchar('\n');
}
return 0;
}
void to_binary(unsigned long n)
{
int a;
a = n % 2;
if (n >= 2)
{
to_binary(n / 2);
}
if (a == 0)
{
printf("0");
}
else
printf("1");
return;
}
5 如果想要通过函数改变主调函数中的变量值,需要使用指针
如下通过调用函数交换两个变量的值
#include <stdio.h>
void interchange(int*, int*);
int main()
{
int x = 5;
int y = 7;
//交换 x y
interchange(&x, &y);
printf("x = %d y =%d \n", x, y);
return 0;
}
void interchange(int* v, int* u)
{
int tem =0 ;
tem = *v;
*v = *u;
*u = tem;
return;
}
6 指针简介
指针指的是一个值为内存地址的变量
间接运算符* 又叫解引用运算符