請問以a(7,20)呼叫下列a()函式,函式執行完後其回傳值為何?並需詳
述執行過程。(20 分)
int a(int n, int m) {
if (n >= 10) {
if (m < 16) {
return n + m ;
}
else {
return a(n, m-2) + m ;
}
}
else {
return a(n+1, m) + n ;
}
}
若以f(30)呼叫下列f()函式,會列印出那些數字?(20 分)
void f(int n) {
printf ("%d\n", n);
while (n != 1) {
if ((n%3)==1) {
n = n + 2;
}
else if((n%3)==2) {
n = n + 1;
}
else {
n = n / 3;
}
printf ("%d\n", n);
}
}
(30) 20 分
給定下列程式,其中t 被宣告為全域變數,請問程式執行後輸出為何?
(20 分)
int t=10;
//全域變數
void sum(int a) {
int t=20;
for( ; a>=0; a=a-5) {
printf("%d,", t);
t=t+a;
printf("%d,", t);
}
}
int main () {
printf("%d,", t);
sum(t);
printf("%d,", t);
t=15;
printf("%d", t);
return 0; }