程式检定题库程度基本.docx

上传人:b****3 文档编号:24872451 上传时间:2023-06-02 格式:DOCX 页数:16 大小:120.08KB
下载 相关 举报
程式检定题库程度基本.docx_第1页
第1页 / 共16页
程式检定题库程度基本.docx_第2页
第2页 / 共16页
程式检定题库程度基本.docx_第3页
第3页 / 共16页
程式检定题库程度基本.docx_第4页
第4页 / 共16页
程式检定题库程度基本.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

程式检定题库程度基本.docx

《程式检定题库程度基本.docx》由会员分享,可在线阅读,更多相关《程式检定题库程度基本.docx(16页珍藏版)》请在冰豆网上搜索。

程式检定题库程度基本.docx

程式检定题库程度基本

【程式檢定題庫—程度:

基本】(100年9月13號更新)

Q1.試利用迴圈撰寫出一程式可計算出n!

的值。

(若判斷輸入的n為負值,則須重新讓使用者輸入至正值再進行計算)

例如輸入:

8

輸出結果

8!

=40320

例如輸入:

6

輸出結果

6!

=720

Q2.試撰寫一程式可求出多項式(1+2)+(2+4)+(3+6)+…+(n+2*n)的和。

例如輸入:

8

輸出結果

(1+2)+(2+4)+(3+6)+(4+8)+(5+10)+(6+12)+(7+14)+(8+16)=108

例如輸入:

7

輸出結果

(1+2)+(2+4)+(3+6)+(4+8)+(5+10)+(6+12)+(7+14)=84

Q3.試撰寫一程式可由鍵盤輸入一個正整數,然後求其所有的因數。

例如輸入:

68

輸出結果

124173468

Q4.所謂"Armstrong數"是指一個三位數的整數,其各位數字之立方和恰等於該數的本身。

例如:

153是一個Armstrong數,因為153=13+53+33。

試撰寫一程式,找出所有的Armstrong數。

輸出結果

Armstrong數有153370371407

Q5.請設計一個程式,能判斷一數是否為迴文數。

所謂迴文數(palindrome)就是一個數從左到右與從右到左的讀法相同。

例如:

12321就是迴文數,1234則不是。

例如輸入:

1234

輸出結果

1234isnotapalindrome.

例如輸入:

25752

輸出結果

25752isapalindrome.

Q6.將一十進位的數轉換成二進位,秀出轉換後第幾個bit為1,有幾個bits為1。

例如輸入:

12

輸出結果

12

Bit’1’at{2,3}

Bit‘1’has2

例如輸入:

61

輸出結果

61

Bit’1’at{0,2,3,4,5}

Bit‘1’has5

Q7.試寫一個程式,要求使用者輸入兩個整數資料,而後將這兩個整數資料傳入處理函式(以傳址呼叫或傳參考呼叫方式,兩者擇其一實作),計算這兩個整數的算術平均數與幾何平均數,再將其傳回主程式予以輸出至螢幕上(請將使用者輸入的這兩個整數資料一併輸出)。

例如:

輸入資料

請輸入兩個整數:

49

輸出結果

算數平均數為6.5

幾何平均數為6

Q8.假設某便利商店的工讀生的月薪資,可以依照下列方式計算:

60個小時之內,每小時75元

61~75個小時,以1.25倍計算

76個小時以後以1.75倍計算

例如,如果工作時數為80小時,則薪資為60*75+15*75*1.25+5*75*1.75=6562.5元。

請撰寫一個程式,首先在螢幕上輸入某工讀生該月的工作時數(為一整數),然後計算並列印出實領薪資(取至小數點後第一位)。

結果如下:

1.工作時數=80

實領薪資=6562.5元

2.工作時數=70

實領薪資=5437.5元

3.工作時數=50

實領薪資=3750.0元

Q9.請撰寫一個程式,利用dowhile迴圈完成九九乘法表。

在螢幕上列印結果如下:

1*1=12*1=23*1=34*1=45*1=56*1=67*1=78*1=89*1=9

1*2=22*2=43*2=64*2=85*2=106*2=127*2=148*2=169*2=18

1*3=32*3=63*3=94*3=125*3=156*3=187*3=218*3=249*3=27

1*4=42*4=83*4=124*4=165*4=206*4=247*4=288*4=329*4=36

1*5=52*5=103*5=154*5=205*5=256*5=307*5=358*5=409*5=45

1*6=62*6=123*6=184*6=245*6=306*6=367*6=428*6=489*6=54

1*7=72*7=143*7=214*7=285*7=356*7=427*7=498*7=569*7=63

1*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=649*8=72

1*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81

Q10.請撰寫一程式,包含二個函數:

fac(n)=1*2*3*…*n及sum(n)=1+2+3+…+n,首先請在螢幕上輸入一個整數n,然後以呼叫函數的方式,計算並列印出fac(n)=1*2*3*…*n=?

及sum(n)=1+2+3+…+n=?

結果範例如下:

請輸入整數n=7

fac(7)=1*2*3*…*7=5040

sum(7)=1+2+3+…+7=28

Q11.請分別計算下列運算式的值,寫出最後變數a~h的值為何?

c=4+(a=3+(b=4+5));

d=10.0+2.0*4.0–6.0/3.0;

e=10%3;

f=5+3*8/2+3;

g=(5+3)*8/2+3;

h=2*4>3*5;

Q12.請建立C程式計算下列運算式的值,如下所示:

(1)2x2-4x+1,x=3.0、4.0和2/3

(2)a2+b,a=2.0、4.0和2/3,b=10.0、5.0和12.0

(3)3y2+8y+4,y=2.0、4.0和2/3

Q13.請建立C程式將下列的八和十六進位值轉換成十進位值顯示,如下所示:

0277、0xcc、0xab、0333、0555、0xff

Q14.現在有200個蛋,一打是12個,請設計C程式計算200個蛋是幾打,還剩下幾個蛋。

Q15.請設計C程式輸入整數值,然後顯示數值的十進位、十六進位和八進位值。

Q16.請撰寫C程式執行從1到100的迴圈,但只顯示45~67之間的奇數,並且計算其總和。

Q17.請寫一個C程式依序顯示1~20的數值和其平方,每一數值成一列,如下所示:

11

24

39

………

Q18.目前商店正在周年慶折扣,消費者消費1000元,就有8折的折扣,請建立C程式輸入消費額為900、2500和3300時的付款金額?

Q19.請設計C程式計算網路購物的運費,基本物流處理費199,1~5公斤,每公斤50元,超過5公斤,每一公斤為30元,在輸入購物重量為3.5、10、25公斤,請計算和顯示購物所需的運費+物流處理費?

Q20.請設計printStars()函數傳入顯示幾列的參數,即可顯示星號符號表示的三角形圖形,如下圖所示:

*

**

***

****

*****

******

*******

Q21.請寫遞迴函數sum(int),計算1到參數值的和,例如:

sum(5),就計算5+4+3+2+1。

Q22.請使用巨集定義MAX(a,b)和MIN(a,b)函數,可以分別取得2個參數的最大和最小值(提示:

使用C語言的條件運算子)。

Q23.請使用巨集定義平方和三次方的函數SQUARE(a)和CUBE(a)。

Q24.請設計C程式建立2個各5個元素的一維陣列arr1和arr2,其初值如下所示,然後建立5個元素的一維陣列result,使用迴圈計算arr1和arr2相同索引元素的和,將它存入陣列result,最後顯示出的陣列內容,其格式如下所示:

索引arr1arr2result

02+3=5

134+56=90

233+10=43

323+20=43

467+73=140

Q25.請建立arrMax()和arrMin()函數傳入整數陣列,傳回值是陣列的最大值和最小值,C程式可以讓使用者輸入5個數字,其範圍為1~1000,在存入陣列後,找出陣列的最大值和最小值。

Q26.請利用srand及rand這兩個函式,藉srand函式設定亂數種子,以rand函式產生亂數方式,設計一個樂透開獎程式,隨機產生一組大樂透開獎號碼,並將其輸出至螢幕。

註:

大樂透開獎號碼為1至49的正整數。

(961考題)

Q27.請撰寫一程式,包含二個函數:

fac(n)=1*2*3*…*n及sum(n)=1+2+3+…+n,首先請在螢幕上輸入一個整數n,然後以呼叫函數的方式,計算並列印出fac(n)=1*2*3*…*n=?

及sum(n)=1+2+3+…+n=?

(962考題)

 【輸入輸出範例】:

 請輸入整數n=7

 fac(7)=1*2*3*…*7=5040

 sum(7)=1+2+3+…+7=28

Q28、請撰寫一個程式,使用一個for迴圈來計算下面的數學式:

my_fun(x,n)=

首先請在螢幕上輸入x及n,並在螢幕上列印出my_fun(x,n)之計算結果。

結果範例如下:

1.請輸入x=0.1

請輸入n=5

my_fun(0.100000,5)=0.105171

2.請輸入x=0.2

請輸入n=5

my_fun(0.200000,5)=0.221403

Q29.請設計一C程式,由使用者任意輸入三角形的三邊長(邊長為整數,且輸入值並未經過大小排列)後,判斷此三邊所組成之三角形是何種三角形(正三角形、等腰三角形、一般三角形或非三角形),並印出答案。

(972新增)

【輸入輸出格式】:

【提示】:

假設輸入的三邊長分別為:

a,b,c;且其中abc

若a=b或b=c則為等腰三角形(isoscelestriangle)

a=b=c則為正三角形(regulartriangle)

c>=a+b則為非三角形(nontriangle)

【註】:

任二邊長之總和皆大於第三邊則可形成三角形;若為正三角形,請勿再列印出等腰三角形。

Q30.請撰寫一個程式可由鍵盤輸入時間(小時、分鐘),然後在螢幕上顯示出對應的時鐘

上分針與時針之間的夾角為幾度。

(972考題)

例如:

請輸入現在時間(小時:

分鐘)

3:

15

3點15分時,時針與分針之夾角為7.5度

Q31.試寫一C程式,可以輸入兩個正整數a和b,然後以遞迴方式求出a和b的最大公因數。

(972考題)

Q32.請撰寫一個程式,可依輸入產生N個0至99的整數亂數,然後由小至大排序後輸出。

例如輸入:

5

輸出結果:

125253598

512253598

Q33.請撰寫一個程式,可輸入一元二次方程式的係數,計算後輸出解。

此程式必須能處理實根與虛根的問題。

判別式

例如輸入:

12-3

輸出結果:

X1=1.000000X2=-3.000000

例如輸入:

1-413

輸出結果

X1=2.000000+3.000000iX2=2.000000-3.000000i

Q34.請撰寫一個程式,可計算定期定額投資收益結果,利率採複利計算。

程式可輸入年存額為X元,年複利率為R%,第N年後領回。

(請將結果四捨五入至整數位)

例如:

每年存100000,存3年,若是複利率為2.25%,3年後的本利和如下:

第一年初存入100000,本金=100000

第二年初,前一年本利=100000*(1+2.25%)=102250,加上存入的100000,合計202250

第三年初,前一年本利=202250*(1+2.25%)=206801,加上存入的100000,合計306801

第三年尾合計領回的本利和=306801*(1+2.25%)=313704

例如輸入(XRN):

100001210

輸出結果

196546

例如輸入(XRN):

100001520

輸出結果

1178101

Q35.大於1的整數,除了1與本身以外沒有其他因數,稱之為『質數』。

換言之,質數僅被1及本身整除。

因此,2,3,5,7,11….等均稱為質數,而33可被1,3,11,33整除,非質數。

請撰寫一個程式,可輸入一整數N,計算出所有小於等於N的所有質數,並以每10個一列輸出,最後亦輸出質數總個數。

例如輸入:

100

輸出結果

2357111317192329

31374143475359616771

7379838997

Thereare25primes

Q36.試撰寫一程式可由鍵盤輸入兩個數字,並求得此兩數的最大公因數。

例如輸入:

5448

輸出結果

54與48的最大公因數為6

Q37.試撰寫一程式,可依據輸入的長度,列印出指定對角長度的星號菱形。

例如輸入:

13

輸出結果

*

***

*****

*******

*********

***********

*************

***********

*********

*******

*****

***

*

Q38.請設計一個程式,能隨機從1~100中取10個數,將它們由小到大排序。

輸出結果

Thenumbersare:

921253458636684879698

輸出結果

Thenumbersare:

24629505470798588

Q39.如果有一數n,其真因數(Properfactor)的總和等於n,則稱之為完美數(Perfect

Number),例如以下幾個數都是完美數:

6=1+2+3

28=1+2+4+7+14

496=1+2+4+8+16+31+62+124+248

現在請寫一個程式,在輸入一個數字n後,能印出正因數的和並回答其是否為完美數。

例如輸入:

496

輸出結果

Thesumofthesedivisorsis992

496isaperfectnumber!

例如輸入:

49

輸出結果

Thesumofthesedivisorsis57

49isnotaperfectnumber!

Q40.請撰寫一程式,利用迴圈計算12−22+32−42+…+472−482+492−502的值。

輸出結果

1^2−2^2+3^2−4^2+...+49^2−50^2=−1275

Q41.撰寫一函數doublemy_fun(intn),可用來計算下面的數學式,並可由使用者任意輸入n的值後,列印出my_fun(n)的計算結果。

例如輸入:

10

輸出結果

1.718282

例如輸入:

8

輸出結果

1.718279

Q42.試撰寫一程式可計算Fibonaccisequence(費氏數列),並可由使用者任意輸入n的值後,產生fib(n)的計算結果。

例如輸入n:

9

輸出結果

fib(9)=34

例如輸入n:

10

輸出結果

fib(10)=55

Q43.試撰寫一程式可提供使用者查詢一星期中每一日的英文單字,若輸入的內容非星期一至星期日的範圍,則須顯示”查無此日outofrange”的訊息。

例如輸入:

星期五

輸出結果

星期五的英文單字為Friday

 

Q44.費式數列(Fibonacci)是第一個和第二個數字為1,F0=F1=1,其它是前兩個數字的合Fn=Fn-1+Fn-2,n>=2,請設計fibonacci()函數顯示費式數列,參數是顯示數字的個數。

Q45.請設計遞迴函數計算Xn的值,例如:

57、85等。

Q46.請設計一個程式由使用者輸入一個正整數n,計算下列級數計算至第n項的值,並將此計算值輸出至螢幕。

(961考題)

Q47.請撰寫一個程式,使用一個for迴圈來計算下面的數學式:

首先請在螢幕上輸入x及n,並在螢幕上列印出my_fun(x,n)之計算結果。

(962考題)

【輸入輸出範例】:

  請輸入x=0.1

  請輸入n=5

  my_fun(0.100000,5)=0.105171

  請輸入x=0.2

  請輸入n=5

  my_fun(0.200000,5)=0.221403

Q48.給予一整數n,請計算n!

n!

=n*(n-1)*(n-2)*…*3*2*1。

請注意:

程式中不可以使用任何四則運算(+-*/)。

提示:

使用++運算子。

例如輸入:

5

輸出結果

120

例如輸入:

6

輸出結果

720

Q49.試寫一個程式,可將使用者輸入的字串中小寫的英文字轉成大寫的英文字,字串中大寫的英文字轉成小寫的英文字。

(992新增)

例如:

輸入資料

Goodmorning

輸出結果

gOODMORNING

Q50.試寫一個程式,可將使用者輸入的字串做反轉。

(992新增)

例如:

輸入資料

Goodmorning

輸出結果

gninromdooG

Q51.寫一個程式讀入一個字串,然後用一個指標指向該字串,使用指標移動的方式將字元逐一轉換成大寫,並輸出前後之字串內容。

(100.1新增)

Q52.利用動態記憶體配置的方法,寫一個可以讀入n個整數的程式,其中n值於執行時期才決定。

最後統計其輸入的資料之和平均值和最小/大值。

(100.1新增)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1