阿摩線上測驗
登入
首頁
>
程式設計
> 96年 - 096年高等三級暨普通資訊處理(普考)#32451
96年 - 096年高等三級暨普通資訊處理(普考)#32451
科目:
程式設計 |
年份:
96年 |
選擇題數:
0 |
申論題數:
4
試卷資訊
所屬科目:
程式設計
選擇題 (0)
申論題 (4)
一、試寫一函式(function):int SumOfDigits(int n)。若 n 為正整數,則該函式傳回 n 以十進位表示法的所有位數中數字的總和。(30 分)
例如:若 int n = 1236;int k=SumOfDigits(n);則 k 的值為 1+2+3+6 也就是等於 12。 若 int n = 58;int k=SumOfDigits(n);則 k 的值為 5+8 也就是等於 13。
二、請利用第一題的 SumOfDigits(n) 函式,撰寫一程式解決以下問題:輸入兩個正整數 A 和 B,已知 A 不大於 B,找出所有大於等於 A 且小於等於 B 的正整數 n 中,可 以被 SumOfDigits(n) 傳回值整除者。
例如:若 n=100;int k=SumOfDigits(n);則 k 的值為 1,k 可以整除 n。 請撰寫一程式將所有符合上述條件的正整數一一在螢幕上印出,一行恰好印一個。 (15 分)
【已刪除】三、撰寫一程式解決以下問題:(25 分)
輸入:三個正整數 n、m 及 d;已知 n > 2*d 且 m > 2*d。
輸出:在螢幕印出如下由星號(*)組成之 n 行 m 列每條邊厚度均為 d 之空心長方形
圖案;所謂長方形某一條邊的厚度是指該邊的星號線條數。
例如:若 n=10 , m=8 , d=2 則印出:
四、若把某數列的 i 個值紀錄為 f(i),已知 f(1)=1 , f(2)=2 , f(3)=3 , f(4)=5;且若 i>4 則 f(i) = 3 * f(i-1) + 5 * f(i-3)。撰寫一函式(function):int fun(int n)。若輸入之 n 為正 整數,則輸出 f(n)。並用 Big-O 符號分析執行該程式的時間及空間複雜度。(30 分)