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); |
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); |
103年普考程式設計概要
三、假設書架上有七本書,已知每一本書的高度都不一樣,請以下列方式進行排序:第一個與第二個位置上的書先比較,較低的書放到第一個位置,較高的書放到第二個位置;再來第二個與第三個位置的書相比較,依此類推。第一輪做完後,再從頭開始進行第二輪的比較與交換,然後再進行第三輪、第四輪等,直至第六輪結束為止。 (一)若這七本書高度分別為15, 12, 17, 18, 11, 14, 19,請問每一輪需交換書本位置的次數為何?(10分) (二)若總共有 n 本書本,最多共需交換幾次書本才能排序完成?(5分) (三)請宣告並說明如何以一維陣列 books[n] 來表示書本的位置與高度。(5分) (四)請以上述宣告的一維陣列資料結構為基礎,用 C, C++ 或 Java 寫出上述排序演算法。(10分) |
答:
(一)
103年身心障礙人員四等程式設計概要
五、請使用 C 語言設計一個程式,讀取使用者輸入的六個整數,並對讀取的六個整數分別判斷他們是否為質數,若是質數則在數字後標上 (P)、若非質數則在數字後標上 (N)。(20分) |
答:
#include <stdio.h> // 函數用於判斷是否為質數 int isPrime(int num) { if (num <= 1) { return 0; // 小於等於1的數不是質數 |
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分) |
答:
#include <stdio.h> int count = 0; |
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); |
104年身心障礙人員四等程式設計概要
六、試說明下列程式碼在瀏覽器上的呈現為何?(15分) <!DOCTYPE html> <html> <body> <p> line 1 </p> <p id="demo"></p> <p> line 2 </p> |
105年地方特考四等程式設計概要
十、在32 位元的作業系統下,試回答下列問題: (一) int a; 請問 a 的範圍?(4分) (二)計時系統都是以正整數範圍 (負整數範圍不計) 來計算秒數,假如開始計時時間為:1 January, 1970 at 12:00:00 a.m.(午夜12點,非中午12點),請問在西元何年何月何日何時,這樣的計時系統會出現問題?(8分) |
答:
(一)
在32位的作業系統下,int 通常是32位的,這意味著它可以存儲232不同的值。由於 int 是有符號的,所以這些值分為正數、負數和零。因此,int a 的範圍通常是 -231 到 231-1,也就是 -2,147,483,648到2,147,483,647。
(二)
105年地方特考四等程式設計概要
四、如果我們採取不同參數傳遞的方法,請回答下面程式執行的結果:(每小題4分,共12分) (一) pass-by-reference (二) pass-by-name (三) pass-by-value-result
|
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); } |
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的閏年,反之則否。 |
答:
(一)
#include <stdio.h> int main( ) { |
106年地方特考四等程式設計概要
四、試問下列 C++ 程式碼逐一執行後,Value 與 list 輸出結果各為多少?(25 分) void swap_ref(int &a, int &b) { int temp; temp = a; a = b; b = temp; } |
106年普考程式設計概要
四、在物件導向語言 (JAVA or C++),宣告變數為 public, private, protected,其差異性為何?(10分) |
答:
(一)public變數
1.是一個在類別外部可以直接存取的變數。當一個變數被標記為 public 時,其他的類別、函式或物件都可以直接讀取和修改它的值。
2.使用 public 屬性可能會破壞封裝,因為它允許外部對類別的內部資料結構進行直接操作。所以,經常的建議是保持變數的私有性,並且提供公共的方法或函式 (如 getters 和 setters) 來存取它們。
(二)private變數
1.只能由同一個類別的方法存取的變數。外部的類別或物件不能直接存取或修改它的值。
106年鐵路特考員級程式設計概要
三、下列程式能將輸入的字串 input = “abcdef”,反向列印為 “fedcba”。試以遞迴的方式撰寫副程式 stringReverseHelper,且其參數宣告必須與stringReverse 方法內的呼叫一致。(25分) public class Reverse { public static void stringReverse(char[ ] array) { stringReverseHelper( array, 0 ); System.out.println( ); |
107年地方特考四等程式設計概要
三、請用下列程式回答下列問題。(每小題5分,共25分) (一)num[ ] 一維陣列最多可儲存幾個正整數? (二)若依序輸入1, 2, 3, …, 99, 0,請說明 num[0] 值為何。 (三)若依序輸入99, 98, …, 2, 1, 0,請說明 num[0] 值為何。 (四)輸入99個亂數產生的正整數後再輸入0,請說明 num[0] 值為何。 (五)請說明 reorder( ) 遞迴函數的功用為何。 int num[100] = {0}; |
107年鐵路特考員級程式設計概要
二、請依據下列 C++ 程式碼執行後,試問輸出結果為何?(25分) #include <stdio.h> #include <stdlib.h> void F(int* p, int n) { int i; for (i = 0; i < n-1; i = i+1) { int tmp = *(p+i+1); |
107年普考程式設計概要
二、請問以下程式輸出的結果為何?(10分) #include <iostream> #include <cstdlib> using namespace std; int main(void) { int i = 0, sum = 0; while(i < 21) { |
107年身心障礙人員四等程式設計概要
二、如果 A, B 都是大小為 M×N 的二維陣列,其元素資料型態均為 double,且假設陣列 A 已經有完整的資料。今欲依據 A 求得 B,使得 B[i][j] 成為在陣列 A 中以 A [i][j] 為中心的3×3個數的平均值 (當 B[i][j] 位於邊界時,仍是以 A[i][j] 為中心的3×3個數的平均值,惟超出陣列的部分皆以0取代,即 B[0][0], B[0][N-1], B[M-1][0], B[M-1][N-1] 是2×2個數的平均值;B[0][j], B[M-1][j] 是2×3個數的平均值, 0 < j < N-1;B[i][0], B[i][N-1] 是3×2個數的平均值, 0 < i < M-1)。無論採用 C/C++ 或 Java 撰寫程式,都可以用下列程式片段達成任務。請為每一空白處填入一運算式 (Expression) 完成該程式片段。作答時須完整寫出此程式片段,並於填空處加底線標示,且不能更改此程式片段。(25分) B[0][0] = _____________________________; B[0][N-1] = _____________________________ ; B[M-1][0] = _____________________________; B[M-1][N-1] = _____________________________; for (int j = 1; ___________; j++) { |
108年地方特考四等程式設計概要
四、請寫出以下 Python 程式的執行結果。(15分) def secret(nums, target): seen = [ ] for index, num in enumerate(nums): other = target-num if other in seen: return [seen[other], index] |
108年普考程式設計概要
三、下列 Python 程式的執行結果為何?(15分) list = [2, 2, 3, 7, 7, 7 , 9 , 9, 10, 10] count = 1 current = list[0] for i in list: if i > current: list[count] = i |
109年地方特考四等程式設計概要
一、下列 C 程式的執行結果為何?(15分) #include <stdio.h> #include <stdlib.h> #define X 3 #define Y 4 void funA(int *, int, int), funB(int *, int, int); int main(void) { |