多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# C 程序:使用递归函数反转给定的数字 > 原文: [https://beginnersbook.com/2014/06/c-program-to-reverse-a-given-number-using-recursive-function/](https://beginnersbook.com/2014/06/c-program-to-reverse-a-given-number-using-recursive-function/) 在本教程中,我们将学习以下两种反转数字的方法。 1)使用递归 2)使用`while`循环 ### 使用递归反转给定的数字: 在这个程序中,我们调用用户定义的函数`reverse_function`,该函数递归调用自身。 ```c #include<stdio.h> int main(){ int num,reverse_number; //User would input the number printf("\nEnter any number:"); scanf("%d",&num); //Calling user defined function to perform reverse reverse_number=reverse_function(num); printf("\nAfter reverse the no is :%d",reverse_number); return 0; } int sum=0,rem; reverse_function(int num){ if(num){ rem=num%10; sum=sum*10+rem; reverse_function(num/10); } else return sum; return sum; } ``` 输出: ```c Enter any number: 23456 After reverse the no is :65432 ``` ### 使用`while`循环反转数字 在上面的程序中,我们学习了如何使用递归函数反转数字。在这里,我们将学习如何使用`while`循环。 ```c #include<stdio.h> int main() { int num,rem,reverse_num=0; //Input number printf("\nEnter any number:"); scanf("%d",&num); while(num>=1) { rem = num % 10; reverse_num = reverse_num * 10 + rem; num = num / 10; } printf("\nReverse of input number is: %d", reverse_num); return 0; } ``` 输出: ```c Enter any number: 49212 Reverse of input number is: 21294 ```