思路分析:
遞歸嘛之前數組求和已經見識到了,就是自己調用自己嘛。但是,這里一定要注意一點,凡是要求用“遞歸算法”的,你在遞歸之前一定要先分類討論,判斷一下當前條件是否允許遞歸,比如一個數組長度就是1,你用遞歸去判斷它里面的某兩個元素的大小,這就要出Bug了。還有既然遞歸的目的是判斷,那要寫的遞歸函數就是個bool類型的。最最重要的是,數組操作一定要注意下標越界問題,數組下標只能在0到數組長度減1之間的。
代碼如下:
// 1314.cpp : 定義控制台應用程序的入口點。
//
#include "stdafx.h"
void Judge(int *a, int n)
{
if (n == 1){ printf("遞增"); }
if (n != 1)
{
if (a[n-1] >= a[n - 2]){ Judge(a, n - 1); }
if (a[n-1] < a[n - 2]){ printf("非遞增"); }
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[] = {1,2,3,3,4,5};
int len = sizeof(a) / sizeof(a[0]);
Judge(a, len);
getchar();
return 0;
}
效果如圖:

