递归全靠找规律,我从0阶到16阶中终于找出了规律,公式如图
#include<stdio.h> #include<stdlib.h> int digui(int n) { int m = 0; if (n == 0) m = 0; else if (n == 1) m = 0; else if (n == 2) m = 1; else if (n == 3) m = 1; else if (n == 4) m = 2; else m = digui(n - 4)+1; return m; } int main() { int n = 0; printf("请输入有多少阶台阶\n"); scanf_s("%d", &n); printf("%d\n",digui(n)); system("pause"); return 0; }