您的位置:首页 > 其它

递归函数的简单说明和使用

2016-11-14 10:24 459 查看
今天来说一下C中的递归函数的简单使用。

1.什么是递归函数?

    1. 一般情况下, 能用循环做得事情, 用递归函数都能做

    2. 但是要注意: 不是什么时候都使用递归, 递归要慎用(性能问题)

    3. 什么是递归函数: 函数自己调用自己

    4. 注意: 递归一定要由一个明确的结束条件, 否则会造成死循环(无限循环)
2.递归函数怎么使用?下面来写一个demo。

  // 需求:要求用户输入一个大于0的数,如果用户输入的数不大于0。那么就一直重复的提醒输入重新输入,直到用户输入的值大于0为止

3.代码实现

 1.用循环实现。代码如下: 

int number = -1;
while (number < 0) {
printf("请输入一个大于0的整数, 以回车结束\n");
scanf("%i", &number);
}
printf("number = %i\n", number);


 2.用递归函数实现。

 2.1. 首先定义一个函数

void scanfNumber()
{
// 1.接收用户输入的值
int number = -1;
printf("请输入一个大于0的整数, 以回车结束\n");
scanf("%i", &number);

// 2.判断用户输入的值是否合法
if (number < 0) {
// 不合法, 需要重新输入
// 函数可以自己调用自己
scanfNumber();
}else
{
printf("number = %i\n", number);
}
}


2.2. 在main函数中调用递归函数

int main(int argc, const char * argv[]) {
//递归函数的调用
scanfNumber();

return 0;
}


    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  函数 递归