阿摩線上測驗
登入
首頁
>
程式設計
> 103年 - 103年高等三級暨普通考普通_資訊處理#29119
103年 - 103年高等三級暨普通考普通_資訊處理#29119
科目:
程式設計 |
年份:
103年 |
選擇題數:
0 |
申論題數:
10
試卷資訊
所屬科目:
程式設計
選擇題 (0)
申論題 (10)
試題一、二程式片段都以 C 語法撰寫,並請假設下列宣告;其中??????表示未完成部分。
#include <stdio.h>
#include <math.h>
#define TRUE 1
#define FALSE 0
int i, j, k, m, n, p;
1.請完成下方兩個函數 is_odd()及 is_even(),使其可以用相互遞迴(mutual
recursion)的方式檢查所輸入的正整數為奇數或偶數。不管 n 是奇數或是偶數,
is_odd(n)及 is_even(n)都應回傳正確的布林值(TRUE 或 FALSE)。請扼
要解說程式之正確性。(15 分)
bool is_even(unsigned int n) {
if (??????)
return ??????
else
return ??????
}
bool is_odd(unsigned int n) {
if (??????)
return ??????
else
return ??????
}
2.請撰寫單一遞迴函數(single recursive function)check 以判斷所給之正整數為奇 數或偶數,若為奇數回傳 FALSE,若為偶數回傳 TRUE。請扼要解說程式之正確 性。(15 分)
scanf (“%d”, &n);
if (n > 0)
for (m=0, i=1; i<=n; m++, i=i*2);
printf (“%d
”, m);
1.請說明該程式片段最後輸出的數字的意涵,也就是 m 與 n 的關係。(10 分)
2.請改寫該程式片段,在不使用迴圈的情況下可以得到相同的結果。(15 分)<br>
scanf (“%d”, &n);<br>
if (n > 0)<br>
??????<br>
printf (“%d<br>”, m);
1.若這七本書高度分別為 15, 12, 17, 18, 11, 14, 19,請問每一輪需交換書本位置的次 數為何?(10 分)
2.若總共有 n 本書本,最多共需交換幾次書本才能排序完成?(5 分)
3.請宣告並說明如何以一維陣列 books[n]來表示書本的位置與高度。(5 分)
4.請以上述宣告的一維陣列資料結構為基礎,用 C, C++或 Java 寫出上述排序演算 法。(10 分)
品牌 庫存 銷售數
Volvo 18 20
Luxgen 57 145
Toyota 41 78
Honda 17 15
1.請宣告二維陣列$cars 並事先儲存上述四種汽車品牌、庫存、銷售數。(5 分)
2.請用迴圈印出上述表格內容。(10 分)
<!DOCTYPE html>
<html>
<body>
<?php
$cars = . . .
. . .
</body>
</html>