申論 4請回答下列C 語言程式碼的問題:(每小題10 分,共20 分)㈠請填入函數(function)f1()中底線(1)~(5)處,讓程式test1()執行後將會印出10 8 6 4 2。#include <stdio.h>void f1(int a, int b (1) ) {int i;for (i= (2) ; i >= (3) ; i (4) ) {b[i] = 10 (5) 2*i;}}void test1() {int a[]={1, 2, 3, 4, 5}, b[5]={0};f1(a[3], b);printf("%d %d %d %d %d\n", b[0], b[1], b[2], b[3], b[4]);}㈡寫出程式test2()執行的結果;並說明陣列(array)的特性。int f2(int x[], int y) {int i=0;x[0] = x[1];for(i=1; i<y; i++) {x[i]= x[x[i]] + x[i];}}void test2() {int w[] = {0, 1, 2, 0, 1};f2(w, w[2]);printf("%d %d %d %d\n", w[0], w[1], w[2], w[3]);}