1064 words
5 minutes
114 北科四技二專甄選 資工 (資安組考題)
2025-06-23

前言#

統測成績出來之後跑去投推甄,去網路上找北科資工資安跟一般組考試的考古題都找不到,於是就誕生了這篇文章QQ,喔對ㄌ,我這一屆(114),一般組跟資安組的考題都是程式設計的筆試題目,選擇題的部分有 20 題,然後 40 分鐘,前面 10 題 有 5 個選項(A,B,C,D,E)讓你選,後面 10 題是一堆選項對應一個答案讓你選(A~K),ps: 這篇只有部分題目,而且只是雷同並不是完全一模一樣喔!

題目#

1.#

有關指標的程式設計,如下片段程式可以在【1】的位置加入哪一行程式碼,編譯時不 會產生任何錯誤或警告訊息?

int *p;
char MyName[] = {'A'};
int MyAge;
double MyWeight;
1

( A ) p = MyName; ( B ) p =&MyName[0]; ( C ) p = MyWeight; ( D ) p =&MyAge;

2.#

在跑馬燈的設計上,可以由陣列中取出文字,並且顯示於螢幕上。如下片段程式執行完後 ShowMessage字串為 “ILoveTaiwan”,則Count的初始值應為下列哪一個?

const int Count = ? ;
char Dictionary[50] = "IWhLoaorevYTeouTW5aM7iynwyuaTYn?";
char ShowMessage[12] ={0};
char *P = &Dictionary[0];
int Index = 0, Search = 0;
for(Index =0; Index < 11 ; Index++)
{
    ShowMessage[Index] = P[Search];
    Search += Count;
}

( A ) 0 ( B ) 1 ( C ) 2 ( D ) 3

3. (分兩小題)#

小芳在一個原本可以編譯(Compile)成功的程式中,在 main( )主程式內再加入行號 1 至 行號 6 的程式碼,但加入後發生編譯錯誤的情況。

#define Value1 100
#define Value2 (Value1 - 1)
const int Value3;
int CheckValue = 0;
Value3 = Value2;
CheckValue = Value1 + Value3;

3.1 小芳刪除行號 1 至行號 5 中的哪一個部分後,可以使程式編譯成功? ( A ) (Value1 - 1) ( B ) Value3 = Value2; ( C ) const ( D ) #define Value2 (Value1 - 1)

3.2 程式修正後,當程式執行完行號 6 的時候,CheckValue 的值為下列何者? ( A ) 200 ( B ) 199 ( C ) 198 ( D ) 100

4.#

曉華想要知道三角函數 sin(x)在x=0之後遞增的變化情形,寫了如下的C語言程式碼, 卻發現迴圈內行號 8 和行號 9 的程式碼只執行了一次,下列哪一種修改程式的方式可以讓 迴圈內的程式碼多執行幾次?(提示:sin(1)=0.8415)

#include <stdio.h>
#include <math.h>
int x = 100;
int main(){
int x = 0;
double y = 0.0;
do{
y = 10*sin(x);
printf("x=%d, y=%lf\n", x, y);
 } while(++x <= y);
     printf("end of program\n");
     return 0;
 }

( A ) 把行號3中的x=100改為x=0 ( B ) 把行號10中的++x改為x++ ( C ) 把行號6中y的初始值改為–1.0 ( D ) 把行號3中x的初始值改為1

5.#

曉華寫了下列一段 C 語言程式,想要測試程式執行時如何透過作業系統的終端機 (Console )指令取得參數(Arguments),但發現無法成功進行編譯,應採取下列哪一個方案 來解決這個問題?

1
#include <stdio.h>
//void sub(int i, char *s);
int main(int argc, char *argv[]) {
sub(argc, argv[2]);
return 0;
}

void sub(int i, char *s){
 printf("total %d arguments, and the 2nd one is %s\n", i, s);
11 }

( A ) 將行號4中main( int argc, char *argv[] )改為main() ( B ) 去掉行號3最前面的註解標記// ( C ) 將行號1的空白行刪除 ( D ) 在行號1新增#include <stdlib.h>

6.#

下面哪一行不會被執行到?

int f(int n) {
    if (n > 17) 
        n += 5 ;
    while (n >= 23)
        n -= 6 ;
    if (n > 17)
        n += 2 ;
    return n ;
}

( A ) 2 ( B ) 5 ( C ) 6 ( D ) 7

7.#

輸出是多少

#include <stdio.h>

int main()
{
        int arr [3][3] = {{1,2,3} , {4,5,6} , {7,8,9}};
        printf("%d",arr[1][2]);

}

( A ) 6 ( B ) 1 ( C ) 7 ( D ) 8

8.#

image

這題不是原本不是長這樣,但我懶得寫測資,所以就從網路上幹圖ㄌ : D

9.#

image

同上

10.#

#include <stdio.h>

int main() {
    int a = 1, b = 2, c = 3, d = 4;
    int i = 0;

    do {
        a += 1;
        b += a;
        c = b - a;
        d = a * c;
        i++;
    } while (d < c); 


    return 0;
}

問你 i 的值是多少

結語#

這邊大概只有全部考題的一半,我好像不是很會記這種東西,抱歉na

Reference#

https://web1.tcte.edu.tw/EXAM/111_4y/

https://web1.tcte.edu.tw/EXAM/112_4y/

https://web1.tcte.edu.tw/EXAM/113_4y/

https://web1.tcte.edu.tw/EXAM/114_4y/

https://hackmd.io/@apcser/B1N5GYEto

https://hackmd.io/@howkii-studio/apcs_exercise_programming

https://apcs.csie.ntnu.edu.tw/wp-content/uploads/2018/12/1060304APCSconcept.pdf

114 北科四技二專甄選 資工 (資安組考題)
https://dkri3c1.github.io/posts/114-北科四技二專甄選-資工-資安組考題/
Author
dkri3c1
Published at
2025-06-23