高一課程C語言

▁▂▃▄▅▆▇█▉981期末考考試題集▉█▇▆▅▄▃▂▁

期末考將會從下面題目中選出5-6題。迴圈進階題不考。


【答題說明】

一、請參考題目說明,寫出一個完整C語言程式。

二、程式中,能寫註解的地方,請盡量寫,以方便老師閱讀。如未寫註解使得老師對於答題內容有所誤解,其結果需自行負責。

三、各題目的參考解答的輸入與輸出僅供題目說明用。程式執行時,螢幕輸出畫面除輸入資料外,均需參考每題的範例輸出結果。

四、答題時,請字跡端正。如字跡潦草,使得老師無法辨識者,其結果需自行負責。

五、若程式中,無過程並直接輸出答案者,整題不與計分。

【評分重點】

一、程式撰寫正確,但有部分格式錯誤者,一處扣兩分。同一題中,同類型的錯誤以扣五分為限。

二、邏輯錯誤者,視情節輕重扣半數以上題分。

 

條件式

第一種解法第二種解法

1.輸入一正整數,判斷為奇數或偶數。【流程圖


執行結果:

輸入一正整數,判斷此數是否為一個奇數或偶數。
請輸入此數:55
55
為奇數

輸入一正整數,判斷此數是否為一個奇數或偶數。
請輸入此數:56
56
為偶數

第一種解法第二種解法
第三種解法
第四種解法

2.輸入兩正整數,判斷此二數是否為一個奇數與一個偶數。【流程圖


執行結果:

輸入兩正整數,判斷此二數是否為一個奇數與一個偶數。
請輸入此二數:55 56
55,56恰為一個奇數與一個偶數

輸入兩正整數,判斷此二數是否為一個奇數與一個偶數。
請輸入此二數:55 55
55,55不為一個奇數與一個偶數

第一種解法第二種解法

3.輸入月份(月份為一個正整數),判斷此月份在四季(春、夏、秋或冬)中的哪一季 ?(春:3~5月,夏:6~8月,秋:9~11月,冬:12月以及1-2月)【流程圖


執行結果:

輸入月份,判斷此月份在四季中的哪一季
請輸入月份:5

輸入月份,判斷此月份在四季中的哪一季
請輸入月份:55
不要亂打

輸入月份,判斷此月份在四季中的哪一季
請輸入月份:8

輸入月份,判斷此月份在四季中的哪一季
請輸入月份:12

第一種解法第二種解法

4.輸入三個整數,找出最大值與最小值。【流程圖


執行結果:

輸入三數,找出最大值與最小值。
請輸入此三數:3 4 5
(3,4,5)中,最大值為5 最小值為3

輸入三數,找出最大值與最小值。
請輸入此三數:5 5 6
(5,5,6)中,最大值為6 最小值為5

第一種解法第二種解法第三種解法第四種解法

5.輸入一個整數,請判斷這個整數為兩位數整數(請考慮99∼10 與 -10∼-99 兩種狀況)。【流程圖


執行結果:

判斷一個輸入的數字是否為兩位數整數
請輸入此數字=35
35
為兩位數整數

判斷一個輸入的數字是否為兩位數整數
請輸入此數字=355
355
不為兩位數整數

判斷一個輸入的數字是否為兩位數整數
請輸入此數字=-35
-35
為兩位數整數

判斷一個輸入的數字是否為兩位數整數
請輸入此數字=-355
-355
不為兩位數整數

第一種解法第二種解法

6.求個人BMI值?並判斷體位標準與否?BMI=體重/(身高*身高),身高以公尺(M)為單位,體重以公斤(KG)為單位 。
(  BMI<18.5 ,請輸出“體重過輕”。
    23>=BMI>=18.5,請輸出“標準體重”。
    25>BMI>23,請輸出“體重過重”。
     BMI>=25,請輸出“肥胖家族”。)【流程圖


執行結果:

本程式將計算BMI,並判斷體位是否標準。
請輸入身高(M):1.75
請輸入體重(Kg):70
你的身高為175.00公分 體重為70.00公斤 BMI=22.86
標準體重

本程式將計算BMI,並判斷體位是否標準。
請輸入身高(M):1.8
請輸入體重(Kg):120
你的身高為180.00公分 體重為120.00公斤 BMI=37.04
肥胖家族

第一種解法
第二種解法

7.輸入任意三邊長,判斷這三邊長可否構成三角形?並判斷構成哪一種三角形。

判斷依據:三角形任意兩邊長之和>第三邊。【流程圖


執行結果:

本程式將輸入任意三邊長,判斷可否構成三角形?並判斷構成哪一種三角形。
請輸入三個邊長數值,並以空白鍵隔開:3 4 5
3.00 4.00 5.00可以構成三角形
是為直角三角形

本程式將輸入任意三邊長,判斷可否構成三角形?並判斷構成哪一種三角形。
請輸入三個邊長數值,並以空白鍵隔開:80 90 100
80.00 90.00 100.00可以構成三角形
是為銳角三角形

本程式將輸入任意三邊長,判斷可否構成三角形?並判斷構成哪一種三角形。
請輸入三個邊長數值,並以空白鍵隔開:30 40 500
30.00 40.00 500.00無法構成三角形

本程式將輸入任意三邊長,判斷可否構成三角形?並判斷構成哪一種三角形。
請輸入三個邊長數值,並以空白鍵隔開:90 20 100
90.00 20.00 100.00可以構成三角形
是為鈍角三角形


迴圈基本題

第一種解法
第二種解法

01.輸入一正整數N,求1+2+3+4+……………….+n=?流程圖


執行結果:

本程式將讓使用者輸入一正整數,計算出1+2+...+N之總和
請輸入一正整數N= 10
1+2+...+10=55

本程式將讓使用者輸入一正整數,計算出1+2+...+N之總和
請輸入一正整數N= 100
1+2+...+100=5050

第一種解法
第二種解法

02.輸入一正整數N,求1-2+3-4+………………. n=?流程圖


執行結果:

本程式將讓使用者輸入一正整數,計算出1-2+...(+-)N之總和
請輸入一正整數N= 15
1-2+...+15=8

本程式將讓使用者輸入一正整數,計算出1-2+...(+-)N之總和
請輸入一正整數N= 20
1-2+...-20=-10

第一種解法第二種解法
第三種解法

03.輸入一正整數N,求1 + 1/2 + 2/3 + 3/4 +……………….+ (n-1)/n=?流程圖


執行結果:

本程式將讓使用者輸入一正整數,計算出1+1/2+2/3...+(N-1)/N之總和
請輸入一正整數N= 45
1+1/2+2/3...+(44)/45=41.605045

本程式將讓使用者輸入一正整數,計算出1+1/2+2/3...+(N-1)1/N之總和
請輸入一正整數N= 5
1+1/2+2/3...+(4)/5=3.716667

第一種解法
第二種解法

04.輸入一正整數N,求1+1/2+1/3+1/4+……………….+1/n=?流程圖


執行結果:

本程式將讓使用者輸入一正整數,計算出1+1/2+...+1/N之總和
請輸入一正整數N= 10
1+1/2+...+1/10=2.928968

本程式將讓使用者輸入一正整數,計算出1+1/2+...+1/N之總和
請輸入一正整數N= 100
1+1/2+...+1/100=5.187378

第一種解法
第二種解法

05.輸入一正整數N,求1-1/2+1/3-1/4+……………….1/n=?流程圖


執行結果:

本程式將讓使用者輸入一正整數,計算出1-1/2+1/3-1/4+….1/n之總和
請輸入一正整數N= 15
1-1/2+...+1/15=0.725372

本程式將讓使用者輸入一正整數,計算出1-1/2+1/3-1/4+….1/n之總和
請輸入一正整數N= 10
1-1/2+...-1/10=0.645635

第一種解法
第二種解法

06.讀入10個數字(可正負),列印正值的個數與負值的個數。並依其結果列印訊息“正值多”、“負值多”、“正負值一樣多”。(0算正值)流程圖


執行結果:

讀入10個數字(可正負),列印正值的個數與負值的個數。
請輸入第1次數字:10
請輸入第2次數字:5
請輸入第3次數字:-3
請輸入第4次數字:-5
請輸入第5次數字:-15
請輸入第6次數字:-99
請輸入第7次數字:51
請輸入第8次數字:231
請輸入第9次數字:87
請輸入第10次數字:13
你輸入了6個正數,4個負數。
正值多

讀入10個數字(可正負),列印正值的個數與負值的個數。
請輸入第1次數字:3
請輸入第2次數字:4
請輸入第3次數字:5
請輸入第4次數字:6
請輸入第5次數字:7
請輸入第6次數字:-9
請輸入第7次數字:-5
請輸入第8次數字:-7
請輸入第9次數字:-6
請輸入第10次數字:-5
你輸入了5個正數,5個負數。
正負值一樣多

第一種解法
第二種解法

07.阿婆賣蛋,七個一數餘二且十一個一數餘二且三個一數餘二,求<10000之內的所有可能結果。流程圖


執行結果:

本程式將計算阿婆賣蛋,求<10000的所有可能結果
可能的結果有:2 233 464 695 926 1157 1388 1619 1850 2081 2312 2543 2774 3005 3236 3467 3698 3929 4160 4391 4622 4853 5084 5315 5546 5777 6008 6239 6470 6701 6932 7163 7394 7625 7856 8087 8318 8549 8780 9011 9242 9473 9704 9935

第一種解法

08.寫一程式計算一組數字的乘積。你的程式必須能夠連續輸入數個整數(以Enter隔開),當輸入數字為0時,隨即輸出結果,並結束程式。【流程圖


執行結果:

本程式將程式計算一組數字的乘積。
請輸入數字:1
請輸入數字:2
請輸入數字:3
請輸入數字:4
請輸入數字:5
請輸入數字:0
此組數字的乘積為120

本程式將程式計算一組數字的乘積。
請輸入數字:-5
請輸入數字:95
請輸入數字:32
請輸入數字:10
請輸入數字:0
此組數字的乘積為-152000

第一種解法第二種解法
第三種解法

09.輸入兩數字,求最大公因數(GCD)與最小公倍數(LCM)。【流程圖

最小公倍數(LCM)=兩整數相乘 / 最大公因數(GCD)。


執行結果:

本程式將輸入兩數字,求最大公因數(GCD)與最小公倍數(LCM)。
請輸入第一個數字:95
請輸入第二個數字:51
95,51的最大公因數為1 最小公倍數為4845

本程式將輸入兩數字,求最大公因數(GCD)與最小公倍數(LCM)。
請輸入第一個數字:55
請輸入第二個數字:99
55,99的最大公因數為11 最小公倍數為495

第一種解法第二種解法第三種解法
第四種解法

10.請輸出四位數(d1d2d3d4)中,所有位數總和為9的數值。(即d1 +d2 +d3+d4=9流程圖


執行結果:

請輸出四位數中,所有位數總和為9的數值。
這些數值有:1008 1017 1026 1035 1044 1053 1062 1071 1080 1107 1116 1125 1134 1143 1152 1161 1170 1206 1215 1224 1233 1242 1251 1260 1305 1314 1323 1332 1341 1350 1404 1413 1422 1431 1440 1503 1512 1521 1530 1602 1611 1620 1701 1710 1800 2007 2016 2025 2034 2043 2052 2061 2070 2106 2115 2124 2133 2142 2151 2160 2205 2214 2223 2232 2241 2250 2304 2313 2322 2331 2340 2403 2412 2421 2430 2502 2511 2520 2601 2610 2700 3006 3015 3024 3033 3042 3051 3060 3105 3114 3123 3132 3141 3150 3204 3213 3222 3231 3240 3303 3312 3321 3330 3402 3411 3420 3501 3510 3600 4005 4014 4023 4032 4041 4050 4104 4113 4122 4131 4140 4203 4212 4221 4230 4302 4311 4320 4401 4410 4500 5004 5013 5022 5031 5040 5103 5112 5121 5130 5202 5211 5220 5301 5310 5400 6003 6012 6021 6030 6102 6111 6120 6201 6210 6300 7002 7011 7020 7101 7110 7200 8001 8010 8100 9000

第一種解法第二種解法

11.計算任意正整數N的階乘值(N!)。(N<20) (N!=N*(N-1)*……*2*1)流程圖


執行結果:

計算任意正整數N的階乘值(N!)
請輸入此正整數=5
1*2*...*5=120

計算任意正整數N的階乘值(N!)
請輸入此正整數=10
1*2*...*10=3628800

第一種解法
第二種解法

12.計算並列印出2的前20次方之數值。流程圖


執行結果:

本程式將計算並列印出2的前20次方之數值。
2的 1 次方為 2
2的 2 次方為 4
2的 3 次方為 8
2的 4 次方為 16
2的 5 次方為 32
2的 6 次方為 64
2的 7 次方為 128
2的 8 次方為 256
2的 9 次方為 512
2的 10 次方為 1024
2的 11 次方為 2048
2的 12 次方為 4096
2的 13 次方為 8192
2的 14 次方為 16384
2的 15 次方為 32768
2的 16 次方為 65536
2的 17 次方為 131072
2的 18 次方為 262144
2的 19 次方為 524288
2的 20 次方為 1048576

第一種解法第二種解法
第三種解法

13.Fibonacci數列﹦0,1,1,2,3,5,8,13,……..

  I位數﹦第(I-1)位數+第(I-2)位數 ,I>2

請列出Fibonacci數列的前25項。流程圖


執行結果:

本程式將列出Fibonacci數列的前25項。
這些數列為:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368

第一種解法
第二種解法

14.一個數等於它所有的因數和,這種數我們叫它完全數﹝不包括它本身﹞

      6=1+2+3

       28=1+2+4+7+14

請列印出10000之內,所有的完全數。流程圖


執行結果:

本程式將列印出10000之內,所有的完全數。

這些數值有:6 28 496 8128

第一種解法
第二種解法

15.輸入一正整數,列出此數的所有正因數,並判斷此數字是否為質數?流程圖


執行結果:

輸入一正整數,列出此數的所有正因數,並判斷此數字是否為質數
請輸入一個數字:15
15的因數有:1 3 5 15
15不為質數

輸入一正整數,列出此數的所有正因數,並判斷此數字是否為質數
請輸入一個數字:121321
121321的因數有:1 121321
121321為質數


迴圈進階題

第一種解法

16.請列出小於等於五位數中,一數字之因數只有2或35

第一種解法

17.輸入20個字元,輸出共有多少個A,B,C,…Z(大小寫視為相同)

  例:輸入ADAaEVSzaZ

      輸出 A:4, D:1, E:1, S:1, V:1, Z:2

第一種解法第二種解法

18.求小於五位數中,求位數和(每一位數相加,如28之位數和為2+810)23的正整數為何?

第一種解法

19.輸入一正整數,列出此數字之所有質因數為何?並求質因數之和為多少?

第一種解法

20.找出所有小於50,000之正整數,其值等於其各個數字之階乘和。

    例:4!0!5!8!5!

        = 24112040320120

        = 40585