01
|
* =================================================== */ |
02
|
/* 程式實例:使用列印陣列函數說明遞迴函數之呼叫 */ |
03
|
/* ================================================== */ |
04
|
|
05
|
int list[6] = { 1, 2, 3, 4, 5, 6 }; /* 陣列內容 */
|
06
|
|
07
|
/* ----------------------------------------------------------------------------------- */
|
08
|
/* 遞迴陣列反向列印函數 */
|
09
|
/* ----------------------------------------------------------------------------------- */
|
10
|
void invert_array(int j)
|
11
|
{
|
12
|
if ( j < 6 ) /* 終止條件 */
|
13
|
{ /* 遞迴串列列印函數呼叫 */
|
14
|
invert_array(j + 1);
|
15
|
printf("[%d]",list[j]); /* 列印元素資料 */
|
16
|
}
|
17
|
}
|
18
|
/* ----------------------------------------------------------------------------------- */
|
19
|
/* 主程式: 反向列印陣列內容. */
|
20
|
/* ----------------------------------------------------------------------------------- */
|
21
|
void main()
|
22
|
{
|
23
|
int i;
|
24
|
|
25
|
printf("陣列的內容:\n");
|
26
|
for ( i= 0; i < 6 ; i++)
|
27
|
printf("[%d]",list); /* 列印元素資料 */
|
28
|
printf("\n"); /* 換行 */
|
29
|
printf("遞迴列印陣列的內容:\n");
|
30
|
invert_array(0); /* 呼叫列印函數 */
|
31
|
printf("\n"); /* 換行 */
|
32
|
}
|