close

將一些面試題目和網路上曾經看過的東西做一個整理,打算弄個一百題試試看 

 

/****************************************************************************************/

 

1. 舉例說明變數定義 ( definition ) 與 變數宣告 ( declaration ) 的差異 ? 

 

ANS :

宣告 : 宣告某變數名稱與使用型別的存在,並不會分配到任何記憶體空間 。

Ex : extern int a ;

 

定義 : 宣告某變數名稱和使用型別的存在,且會分配適當大小的記憶體空間給變數使用。

Ex : int b ;

 

/****************************************************************************************/

 

2 . DBG 題 : float sum = 1/1 + 1/2 + 1/3 + 1/4 + 1/5 + 1/6 +.... 1/9 + 1/10 ; , 請回答 sum 會等於多少 ?

 

 

ANS :

SUM = 1 ;

為什麼 ? 因為整數 / 整數 還是會等於整數,因此,這一個算式,只有1/1會= 1, 其他的都會為 0

 

 

/****************************************************************************************/

 

3. 型態的大小 

 char      a [20] ;

 int         b       ; 

 float      c       ;

double   d       ;

char        e       ;

 

ANS :

20

4

4

8

1

 

/****************************************************************************************/

 

4. 實做題 :  最小公因數,最小公倍數

說明 : 

            可以整除兩數的稱為公因數,我們也可以用輾轉相除法來球最大公因數。

            可以被兩數整除的某數稱為公倍數。

 

 

 

Ans : 

 

 

 

 

/****************************************************************************************/

 

5. 改錯題 : 以下程式有錯嗎 ?

5.1 如果有錯 , 請問錯在哪 ? 

5.2 如果沒錯 , 請問最後一個cout << i << endl ; 為多少 ?

 

 

 

Ans : 

5.1 有錯

(i % 2 = 0 ?    "偶數\n" :  "奇數\n") ; 

要改成

(i % 2 == 0 ?    "偶數\n" :  "奇數\n") ; 

 

5.2 輸出 11 ( ++i )

 

 

 

/****************************************************************************************/

 

6. 1 以下的迴圈 印出的數字為和 ?

 

for ( unsigned int i = 10 ; i >= 0; --i ) 

{

     cout << i << endl ; 

}

 

 

 

 

ANS : 

i 為無號整數,永遠大於 0 , 因此回圈 = 無窮回圈

 

/****************************************************************************************/

 

7. 實做題 :  請寫一個程式,輸入某年某月某日的,然後判斷該日是這個月份的第幾天 ? ( 需考慮閏年 )

 

目前使用的格里曆閏年規則如下:

  1. 西元年分除以400可整除,為閏年。
  2. 西元年分除以4可整除但除以100不可整除,為閏年。
  3. 西元年分除以4不可整除,為平年。
  4. 西元年分除以100可整除但除以400不可整除,為平年

 

 

 

Ans : 

 

 

 

 

/****************************************************************************************/

8. 實做題 : 某小學老師欲出 50 題兩個分數之間的加減乘除給學生練習,請為他寫一個自動出題程式,請注意,我們數字要一直變,然後因為小學生還沒有負數的概念,且因為避免數學式子太過於複雜,所有的數字都要在1-9之間的正整數 ,此為, 分子不能 = 分母  , 輸出格式如下 :

 

 

< 1 > 3/5 + 1/3 =    

< 2 > 2/8 -  3/1 =

< 3 > 5/8 *  4/2 =

< 4 > 1/3 /  3/9 =

 

 

 

Ans : 

※ 還好我以前小學老師不是寫code的 =_= 不然我們應該會被玩死 . . . . . .

 

 

/****************************************************************************************/

9. 實做題 : 請寫一個程式 輸出 

(要可以控制高度)

 

 

 

ANS : 

 

 

/****************************************************************************************/

10. 實驗題 , 請寫一個程式輸出

 

 

 

 

 

 

 

 

 

 

終於結束了 , 沒想到一天搞個10題這麼累,還要挑特定範圍的題目,其實選來選去真的沒啥好出的,哈哈。

這一章節我會比較focus在 " 循環 " 這塊 ,下一個章節 , 讓我好好思考一下要寫啥................

arrow
arrow
    創作者介紹
    創作者 Eric 的頭像
    Eric

    一個小小工程師的心情抒發天地

    Eric 發表在 痞客邦 留言(0) 人氣()


    留言列表 留言列表

    發表留言
    Close

    您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

    請輸入暱稱 ( 最多顯示 6 個中文字元 )

    請輸入標題 ( 最多顯示 9 個中文字元 )

    請輸入內容 ( 最多 140 個中文字元 )

    reload

    請輸入左方認證碼:

    看不懂,換張圖

    請輸入驗證碼