103年地方特考四等程式設計概要
二、請回答下列 C 語言程式問題:
(一)請問下列函式,f1(0.5, 6.5) 的輸出為何 (該數字的精確度到小數點後第一位)?(5分)
double f1(double x, double y) {
int a = 2, b = 1, c = 1;
x += (a+b+c == 2*b);
x -= a*b/x;
return (x+c);
}
(二)請問下列函式,f2(0, 3) 的輸出為何?(5分)
int f2(int x, int y) {
if (x > 5) return (y+1);
else if (x > 3) return 3+f2(x+1, y+1);
else return 1+f2(x+1, y);
}
(三)以下程式功能為:輸入的第一個參數為指定的進位制 (base),B(2 <=B<=9),第二個參數為以 B 進位制表示的數字,N(0 < N < 10,000)。請將 N 經十進位制轉換後輸出,例如將九進位的1621轉成十進位的1234,我們有程式碼,如 printf("%d\n", transformX10(9, 1621));其中會呼叫 transformX10(9, 1621) 做進位制 (base) 的轉換且其輸出為1234。有關 transformX10 的程式如下,請填寫空格處。(每一空格5分,共15分)
int transformX10(int base, int x) {
int ans = 0, index = 1;
while (x > (1) )
ans = (2) +index*(x%10);
index = (3) *base;
x = x/10;
}
return ans;
}
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(12)
103年普考程式設計概要
三、假設書架上有七本書,已知每一本書的高度都不一樣,請以下列方式進行排序:第一個與第二個位置上的書先比較,較低的書放到第一個位置,較高的書放到第二個位置;再來第二個與第三個位置的書相比較,依此類推。第一輪做完後,再從頭開始進行第二輪的比較與交換,然後再進行第三輪、第四輪等,直至第六輪結束為止。
(一)若這七本書高度分別為15, 12, 17, 18, 11, 14, 19,請問每一輪需交換書本位置的次數為何?(10分)
(二)若總共有 n 本書本,最多共需交換幾次書本才能排序完成?(5分)
(三)請宣告並說明如何以一維陣列 books[n] 來表示書本的位置與高度。(5分)
(四)請以上述宣告的一維陣列資料結構為基礎,用 C, C++ 或 Java 寫出上述排序演算法。(10分)
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(16)
103年身心障礙人員四等程式設計概要
五、請使用 C 語言設計一個程式,讀取使用者輸入的六個整數,並對讀取的六個整數分別判斷他們是否為質數,若是質數則在數字後標上 (P)、若非質數則在數字後標上 (N)。(20分)
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(3)
104年地方特考四等程式設計概要
三、定義一個函數如下:
int f(int n) { if(n == 0) return 0; if(n == 1) return 1; if(n == 2) return 2;
return f(n-1)+f(n-2)+f(n-3); }
請問計算 f(6) 時,共呼叫 f(n) 幾次?(8分)
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(9)
104年普考程式設計概要
三、如下程式碼所構成的方法/ 函數 (method/function),在呼叫時,使用recursiveFlowControl(3, “ss”, “dd”, “aa”),請問該方法被呼叫執行後,顯示結果為何?如為語法有誤或執行時期發生中斷,請說明原因,並請修正錯誤或引起中斷的程式,讓程式可以正常執行結束並顯示結果。註:System.out.println( );會將小括號中的字串顯示到螢幕輸出裝置。(15分)
void recursiveFlowControl(int num, String s1, String s2, String s3)
{ System.out.println(“... I am here ...”);
if (num == 1)
{ System.out.println(“num==1, Move from ” + s1 + “ to ” + s2); }
else
{ recursiveFlowControl(num-1, s1, s3, s2);
System.out.println(“num!=1, Move from ” + s1 + “ to ” + s2);
recursiveFlowControl(num-1, s3, s2, s1);
}
} // End of recursiveFlowContorl
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(7)
104年身心障礙人員四等程式設計概要
六、試說明下列程式碼在瀏覽器上的呈現為何?(15分)
<!DOCTYPE html>
<html>
<body>
<p> line 1 </p>
<p id="demo"></p>
<p> line 2 </p>
<script>
var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var text = "";
while (cars[i]) {
text += cars[i] + "<br>";
i++;
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(9)
105年地方特考四等程式設計概要
十、在32 位元的作業系統下,試回答下列問題:
(一) int a; 請問 a 的範圍?(4分)
(二)計時系統都是以正整數範圍 (負整數範圍不計) 來計算秒數,假如開始計時時間為:1 January, 1970 at 12:00:00 a.m.(午夜12點,非中午12點),請問在西元何年何月何日何時,這樣的計時系統會出現問題?(8分)
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(8)
105年地方特考四等程式設計概要
四、如果我們採取不同參數傳遞的方法,請回答下面程式執行的結果:(每小題4分,共12分)
(一) pass-by-reference
(二) pass-by-name
(三) pass-by-value-result
int y = 1, x = 1;
int fun(int a, int b) {b += a; a = b+x; return a;}
void main( )
{ int x = 2;
y = fun(x, y)+y;
printf(“x = %d, y = %d”, x, y);
}
|
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(15)
105年普考程式設計概要
二、根據 IEEE 754 二進位浮點數算術標準,請問下列 C 語言程式碼執行後輸出為何?(25分)
int main( ) {
float A = 100;
float B = -125.53125;
printf("%08X\n", *(unsigned int *) &A);
printf("%08X\n", *(unsigned int *) &B);
}
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(9)
105年身心障礙人員四等程式設計概要
四、請寫出下列 C 語言算式:(每小題15分,共30分)
(一)假設month 為整數變數。請利用三元運算子寫一個 C 語言算式(expression)。假如 month 的值為一個31 天的月份則算式值等於31,假如 month 的值為一個30天的月份則算式值等於30,假如 month 的值等於2,則算式值等於28,假如 month 的值小於1或是大於12,算式值等於 -1。
(二)假設 year 為整數變數。根據西元曆法,小於4000的西元年,若可以為400整除或是可以被4整除但不被100整除的西元年份者為閏年。請寫一個 C 語言算式 (expression),算式值為真表示 year 年為小於4000的閏年,反之則否。
|
jacksaleok 發表在 痞客邦 留言(0) 人氣(6)