Изучение языка C, День 12

#define _CRT_SECURE_NO_WARNINGS 1

/ ****

  • @Title:> День 12
  • @ Описание:> Рекурсия
  • @author:> HuaGe
  • @date:> 2020/10/20 18:56
    * ** /

// Рекурсия
// # include <stdio.h>
//// Вопрос: принять целочисленное значение и распечатать каждую его цифру по порядку, например, вход 123, выход 1 2 3.
// void int_Print (int x)
/ / {
// if (x> 9) {
// int_Print (x / 10);
//}
// printf ("% d \ n", x% 10);
//}
//
// int main ()
// {
// printf ("Пожалуйста, введите целое число:");
// int a;
// scanf ("% d", & a);
// int_Print (a);
//
// return 0;
// }

#include <stdio.h>
//// Функция поиска длины строки
// int my_StrLen (char arr)
// {
// int mark = 0;
// while (
arr! = '\ 0') {
// mark ++ ;
// arr ++;
//}
// знак возврата;
//}

//// Рекурсивным способом находим длину строки
// int my_StrLen (char arr)
// {
// if (
arr! = '\ 0') {
// return my_StrLen (arr + 1) + 1;
// }
// else {
// return 0;
//}
//}
//
// int main ()
// {
// char arr [] = "ertere";
// int len ​​= my_StrLen (arr);
// printf ("% d \ n", len);
//
// return 0;
//}

//// Используйте рекурсию, чтобы найти факториал n
// int jieCheng (int n)
// {
// if (n == 1) {
// return 1;
//}
// else {
// return n * jieCheng ( n-1);
//}
//}
//
// int main ()
// {
// int n = 4;
// int result = jieCheng (n);
// printf ("% d \ n", result);
//
// return 0;
//}

// Чтобы найти последовательность Фибоначчи, нецелесообразно использовать рекурсию, а повторное вычисление слишком велико.
int FeiB (int n)
{
int a, b;
a = 1;
b = 1;
int result = 1;
// printf ("a =% d \ tb =% d \ tc =% d \ n", a, b, c);
/ if (n == 1 || n == 2) {
return 1;
}
/
for (int i = 2; i <n; i ++) {
result = a + b;
a = b;
b = результат;
}
вернуть результат;
}

int main ()
{
int n = 6;
int результат = FeiB (n);
printf ("% d \ n", результат);

return 0;

}

рекомендация

отblog.51cto.com/14947752/2542680