返回「113年 專技高考 資訊技師」題庫

113年 專技高考 資訊技師|歷屆考題全文(機器抽取)

113年專門職業及技術人員高等考試建築師、32類科技師(含第二次食品技師)、大地工程技師考試分階段考試(第二階段考試)暨普通考試不動產經紀人、記帳士考試資訊技師類科歷屆試題,含資料結構與資料庫及資料探勘、計算機系統、網路原理與應用等 6 科。

共 6 份考卷|資料來源:依政府資料開放授權條款(OGDL)第 1 版利用,資料集:考選部歷屆試題(data.gov.tw dataset 170565),113 年。

本頁文字由 PDF 機器抽取,可能有辨識誤差,僅供搜尋參考,請以官方原始檔案為準。

免費登記製作需求🚀 前往「113年 專技高考 資訊技師」下載頁所有公開題庫

資料結構與資料庫及資料探勘

下載:題目

官方不公布申論答案

代號:

01310

頁次:

2

1

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:資料結構與資料庫及資料探勘

考試時間:

2 小時

※注意:

 禁止使用電子計算器。

座號:

六、請將下列的 ERD ( Entity Relationship Diagram )轉換成關聯資料表的關 聯綱要( relation schema ) 。有三個實體分別為辦公室、教授和課程。其 中屬性有底線者為該實體的主屬性( key attribute ) 。每位教授均有一間辦 公室,每間辦公室只屬於一位教授,每位教授可以講授很多課程,每個 課程可由多位教授合授。最後完成的關聯綱要請務必標示出每個關聯綱 要的名稱、主鍵( primary key )和外來鍵( foreign key ) ,若需新的關聯 綱要或屬性請自行命名並請詳細說明。 ( 20 分)

E_ID (員工代碼) P_ID (專案代碼) HOURS (時數)

計算機系統

下載:題目

官方不公布申論答案

代號:

01320

頁次:

2 - 1

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:計算機系統

考試時間:

2 小時

※注意:

 禁止使用電子計算器。

座號:

網路原理與應用

下載:題目

官方不公布申論答案

01330

2

1

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:網路原理與應用

考試時間:

2 小時

※注意:

 禁止使用電子計算器。

座號:

計算機數學

下載:題目

官方不公布申論答案

代號:

01340

頁次:

3

1

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:計算機數學

考試時間:

2 小時

※注意:

 可以使用電子計算器。

試求能產生此種對應序列的摩爾型有限狀態機。 ( 20 分)

座號:

在計算時,請運用下列 Z 檢定時替代假設的拒絕區間( rejection region ) 表格。 ( 12 分)

輸入序列 0 1 1 0 1 0 0 1
輸出序列 1 0 1 1 0 1 0 0
Z 檢定時替代假設的拒絕區間 Z 檢定時替代假設的拒絕區間 Z 檢定時替代假設的拒絕區間 Z 檢定時替代假設的拒絕區間
顯著水準 單尾 單尾 雙尾
顯著水準 單尾低值 單尾高值 雙尾
α=0.05 z < -1.645 z > 1.645 z < -1.96 或 z > 1.96
α=0.01 z < -2.33 z > 2.33 z < -2.575 或 z > 2.575
宣傳活動前( X ) 35 40 28 50 45 32 33 36 30 39
宣傳活動後( Y ) 38 45 32 55 50 35 37 40 34 42
F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值 F 檢定時的關鍵值
分子的自由度 分子的自由度 分子的自由度 分子的自由度 分子的自由度 分子的自由度 分子的自由度
1 2 3 4 5 6 8
1 161 200 216 225 230 234 239
2 18.5 19.0 19.2 19.3 19.3 19.4 19.4
3 10.1 9.55 9.28 9.12 9.10 8.94 8.85
4 7.71 6.94 6.59 6.39 6.26 6.16 6.04
5 6.61 5.79 5.41 5.19 5.05 4.95 4.82
6 5.99 5.14 4.76 4.53 4.39 4.28 4.15
7 5.59 4.74 4.35 4.12 3.97 3.87 3.73
8 5.32 4.46 4.07 3.84 3.69 3.58 3.44

系統分析與資訊安全

下載:題目

官方不公布申論答案

代號:

01350

頁次:

1 - 1

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:系統分析與資訊安全

考試時間:

2 小時

※注意:

 禁止使用電子計算器。

座號:

程式設計

下載:題目

官方不公布申論答案

113 年專門職業及技術人員高等考試建築師、 32 類科技師(含第二次食品技師)、大地工程 技師考試分階段考試(第二階段考試) 暨普通考試不動產經紀人、記帳士考試試題

別:高等考試

科:資訊技師

目:程式設計

考試時間:

2 小時

※注意:

 禁止使用電子計算器。

import java.util.*; public class P1 { int anInt = 0; static void aMethod(int arry[]) { for(int i=0; i<arry.length-1; i++) for(int j=arry.length-1; j>i; j--) if(arry[j] < arry[j-1]){ int temp = arry[j]; arry[j] = arry[j-1]; arry[j-1] =temp; } anInt++; } static void bMethod(int arry[]) { for(int i=0; i<arry.length-1; i++) for(int j=arry.length-1; j>i; j--) if(arry[j] > arry[j-1]){ int temp = arry[j]; arry[j] = arry[j-1]; arry[j-1] =temp; } anInt++; }

座號:

代號:

01360

頁次:

9 - 1

public static void main(String[] args) { Scanner inputObj = new Scanner(System.in); System.out.println("Enter the array size: "); int size = inputObj.nextInt(); int[] intArry = new int[size]; System.out.println("Enter the elements of the array :"); for(int i=0; i<size; i++) intArry[i] = inputObj.nextInt(); P1 callerObj= new P1(); callerObj.aMethod(intArry); System.out.println( anInt + ". Array content: \n " + Arrays.toString(intArry)); callerObj.bMethod(intArry); System.out.println(anInt + ". Array content: \n " + Arrays.toString(intArry)); } } 三、針對下面所給的 C++ 程式,若輸入是 11 5 -3 42 -20 -43 99 43 -4 11 -22 0 4 7 9 -1 皆不相同的數,輸出為何?並說明輸出的資料所代表的意 義。 ( 8 分) #include <iostream> using namespace std; int main() { int N; int nNumbers[1000]; int numLarger[1000] = {0}; cin >> N; for (int i=0; i<N; i++) cin >> nNumbers[i]; for (int j=0; j<N; j++){ for (int k=0; k<N; k++) if(nNumbers[k] > nNumbers[j]) numLarger[j]++; } int m; cin >> m; while (m > 0){ for(int i=0; i<N; i++ ) if( m + numLarger[i] == N){ cout << nNumbers[i] << endl; break; } cin >> m; } return 0; }

Class Person { public: void setFirstName(string fName); void setLastName(string lName); void setAge(int age); private: string firstName; string lastName; int age; }; 使用方式 (A): Person* aPerson = new Person(); aPerson->lastName = "ChangYang"; aPerson->firstName = "WenShiang"; 使用方式 (B): Person aPerson; aPerson.lastName = "ChangYang"; aPerson.firstName = "WenShiang";

import java.io.*; import java.util.*; import java.util.concurrent.atomic.AtomicReference; class rCalculator extends Thread { private List<String> inputLines; private int numRs; private int thdNumber; private char firstOrLastChar; public rCalculator(List<String> inputLines, int thdNumber) { this.inputLines = inputLines; this.thdNumber = thdNumber; this.numRs = 0; this.lastChar = 0; } public int getNumRs() { return numRs; }

public char getFirstOrLastChar(){ return firstOrLastChar; } @Override public void run() { String wholeStr=""; for (String ithStr: inputLines) wholeStr = wholeStr + ithStr; char prevChar= wholeStr.charAt(0); numRs++; for(int j=1;j<wholeStr.length(); j++){ if(wholeStr.charAt(j) != prevChar){ numRs++; prevChar = wholeStr.charAt(j); } } if(thdNumber==1) firstOrLastChar = wholeStr.charAt(wholeStr.length()-1); else firstOrLastChar = wholeStr.charAt(0); System.out.println("Number of Rs = " + numRs + " ---> Thread " + thdNumber); } } public class rsOfString{ public static void main(String[] args) { List<String> inputData = new ArrayList<>(); int lineCount = 0; try (BufferedReader br = new BufferedReader(new FileReader("rsData.txt"))) { String line; while ((line = br.readLine()) != null) { inputData.add(line); lineCount++; } } catch (IOException e) { e.printStackTrace(); return; } List<String> inputForThread0 = inputData.subList(0, lineCount/2); List<String> inputForThread1 = inputData.subList(lineCount/2, lineCount); rCalculator thread0 = new rCalculator(inputForThread0, 0); rCalculator thread1 = new rCalculator(inputForThread1, 1); thread0.start(); thread1.start(); try { thread0.join(); thread1.join(); } catch (InterruptedException e) { e.printStackTrace(); } int totalNumRs = thread0.getNumRs() + thread1.getNumRs(); if(thread0.getFirstOrLastChar()==thread1.getFirstOrLastChar()) totalNumRs--;

}

}

輸入檔 (rsData.txt) 內容:

01000101010000000011111111111 11000101000100000000000001001 11000100000000000000111111111111 1000000111111111111111111111111110

六、下面所給為一以 C++ 定義的 Array class ,請回答下列問題:

若所撰寫之程式碼中之陣列名稱不是用 F 、 G 、 R ,請於答案中註明以何 變數名稱分別來稱呼 F 、 G 、 R 陣列,未加以註明者,本子題不予計分。 此外,請就下面要點標示出所對應的程式碼,未加以標示者,本子題 不予計分:

代號: 01360 頁次: 9 - 6

#include <iostream> using namespace std; class Array { friend ostream &operator<<( ostream &, const Array & ); // output an array friend istream &operator>>( istream &, Array & ); //input an array public: Array( int = 10 ); // default constructor Array( const Array & ); // copy constructor ~Array(); // destructor int getSize() const; // return array size const Array &operator=( const Array & ); // assignment operator bool operator==( const Array & ) const; // equality operator bool operator!=( const Array &right ) const; // inequality operator int &operator[]( int ); // subscript operator int operator[]( int ) const; // subscript operator Array &operator+(const Array &); // merge two arrays const Array &operator>>(int i); const Array &operator-(); Array &operator-(const Array &); private: int size; // pointer-based array size int *ptr; // pointer to first element of pointer-based array };

class Pt{ friend class Shape; friend class Triangle; public: Pt(double =0, double =0); double getX() const {return x;}; double getY() const {return y;}; private: double x; double y; }; Pt::Pt(double c1, double c2) { x = c1; y = c2;

cout << "Point(" <<x<<", "<<y<<") created." << endl; } class Shape { public: Shape( const int &ctColor, const int &fdColor) : contourColor(ctColor), filledColor(fdColor){}; virtual double area() const = 0; // 計算一個形狀 (Shape) 的面積 virtual double perimeter() const = 0 ; // 計算一個形狀的周長 virtual bool outside(const Pt &) const = 0; // 決定所給的點是否在一個形狀外部 virtual void print() const = 0; // 把構成一個形狀的資訊列印出來 virtual void draw() const = 0; // 把一個形狀畫出來 int getContourColor(){return contourColor;} // 取出一個形狀的輪廓顏色 int getFilledColor(){return filledColor;} // 取出一個形狀內部填滿的顏色 private: int contourColor = -1; // 一個形狀的輪廓顏色 int filledColor = -1; // 一個形狀內部填滿的顏色 }; int main() { Pt p1(0, 0); Pt p2(2, 0); Pt p3(1, 1); Triangle aTrgle(p1, p2, p3, 20, 10); aTrgle.area(); aTrgle.outside(p1); aTrgle.perimeter(); aTrgle.print(); aTrgle.draw(); cout << "Contour color: " << aTrgle.getContourColor() << endl; cout << "Filled color: " << aTrgle.getFilledColor() << endl; return 0; } 輸出結果 : Point(0, 0) is created. Point(2, 0) is created. Point(1, 1) is created. Point(0, 0) is created. Point(0, 0) is created. Point(0, 0) is created. Atriangle is created! 20 10 Triangle area is calculated: Point outside a triangle is decided: Triangle perimeter is calculated: Points of a triangle are printed: Atriangle is drawn Contour color: 20 Filled color: 10

<!DOCTYPE html> <html> <head> <title> 長方形面積計算 </title> </head> <body> <h1> 長方形面積計算 </h1> <label for="length"> 長度 :</label> <input type="number" id="length" placeholder=" 輸入長度 <br> <label for="width"> 寬度 :</label> <input type="number" id="width" placeholder=" 輸入寬度 ">

方框 1 方框 2 方框 3 "> <br> <p id="result"></p> <canvasid="rectangleCanvas"width="500" height="500" style="border:1px solid #000;"></canvas> <script> function calculateArea() { const length = parseFloat(document.getElementById('length').value); const width = parseFloat(document.getElementById('width').value); document.getElementById('result').textContent =' 長方形的面積為 : ${area} 平方單位 '; const canvas = document.getElementById('rectangleCanvas'); const context = canvas.getContext('2d'); } </script> </body> </html>

A. 表單初始畫面

免費登記製作需求前往「113年 專技高考 資訊技師」下載完整檔案 →