当前位置:   article > 正文

C语言——函数递归_编写一个递归函数 int high(int n); 用于计算给定参数的最高位对应的数。 其中n是

编写一个递归函数 int high(int n); 用于计算给定参数的最高位对应的数。 其中n是

前言

本文总结了几个递归基础例题,c语言实现

递归的概念

C语言允许函数调用它自己,这种调用过程叫做递归(recursion)

递归的两个必要条件

  1. 存在限制条件,当满足这个限制条件的时候,递归便不再继续
  2. 每次递归调用之后越来越接近这个限制条件

例题

1.递归实现阶乘

#include<stdio.h>
int Fac(int n)
{
   
	if(n<=1)
		return 1;
	else
		return n*Fac(n-1);
}

int main()
{
   
	int n;
	scanf("%d",&n);
	int ret=Fac(n);
	printf("%d\n",ret);
	
	return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

2.递归实现strlen函数

#include<stdio.h>
int Strlen(const char* str)
{
   
	if('\0'==*str)
		return 0;
	else
		return 1+Strlen(str+1);
}

int main()
{
   
	char arr[20]="Hello world!";
	int ret=Strlen(arr);
	printf("%d\n",ret);
	
	return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

3.计算一个正整数各位数字的和

#include<stdio.h>
unsigned fun(unsigned n)
{
   
	if(n>9)
		return n%10+fun(n/10)
  • 1
  • 2
  • 3
  • 4
  • 5
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号