• 沒有找到結果。

程式設計 第三章 習題

N/A
N/A
Protected

Academic year: 2022

Share "程式設計 第三章 習題"

Copied!
8
0
0

加載中.... (立即查看全文)

全文

(1)

程式設計 第三章 習題

問答題

1.除了列舉型態之外,請說明 C 語言中的其他五種基本資料型態?

Ans:整數(int),單精準度浮點數(float),雙精準度浮點數(double),字元(char),空型態 (void)

2.哪些修飾字會對 int 資料型態產生改變?

Ans:short , long , unsinged , signed

3.假設在 32 位元的環境中,請計算 int、long、short 的數位範圍?

Ans:int:-2147483648~+2147483647 long:4bytes short:-34768~+32767。

4.請將下列數位以科學記號來表示。

[1]1234567.89 [2]0.1234567 [3]0.0123456 [4]-567.89

Ans:(1) 1.23456789e+06 (2) 1.234567e-01 (3) 1.234566e-02 (4) -5.6789e+02

5.unsignend 修飾字有何用途?試舉例說明之。

Ans:unsigned 是用來強迫資料型態為正值,由於 unsigned 並不會影響資料所佔用的位元,

因此,可表達的數字範圍可以增加1倍。

6.下列敘述中,是否出現變數與常數?

Int unmber =10;

[1]只有常數 [2]只有變數 [3]有常數也有變數 [4]沒有常數也沒有變數 Ans:(2)只有變數

7.如果您想要在程式中宣告變數用來表達下列數值,您會使用哪些變數名稱呢?

[1]兩端的距離 [2]班級人數 [3]全班平均分數 [4]今日氣溫 [5]幸運字母 [6]幸運數字 Ans:(1) D (2) Class_Num (3) Score_Avg (3) Tpt_TD

(4) Lucky_Letter (6)Lucky_Num

8.呈上題,您會希望將上述變數宣告為哪些基本資料型態呢?

Ans:(1) int (2) int (3) float (4) float (5) char (6) int 9.變數被宣告為 char 資料型態時,存入英文字母會存入哪一種編碼數值?

Ans:ASCLL

(2)

10.每一個字元需要佔用一個位元組,那麼在 C 語言中要保存字串常數〝How are you?〞需要 使用幾個位組?

Ans:13 個 byte

11.請問在 C 語言中,下列兩個敘述是否合法?若合法,其意義又為何?

Int unml,num2;

Numl = num2 =5;

Ans:第一行合法,意義是宣告兩個形態為 int 的變數。

第二行不合法,無法連續指定。

12.下列哪些變數名稱是不法的,請說明原因。

[1]AloHa97 [2]_GAME [3]4D_Word [4]3.le-3

Ans:(3)、(4) 不可使用數字開頭 (5) 不可包含+號

13.下列數值,哪一些應該使用浮點數資料型態?

[1]50 [2]50.1 [3]18.01 [4]3.le-3 Ans:(2)、(3)、(4)

14.在 C 語言中,宣告 long x;與下列何者意義相同?

[1]int long [2]double long [3]long int [4]long double Ans:(3) long int

15.使用 Dev-C+ +(GCC)編譯 C 程式時,下列哪一項不是合法的變數宣告?

[1]float x; [2]float doublex; [3]long float x; [4]long double a; [5]unsigned long x;

Ans:(2)、(3)

16.C 語言採用 2 捕數來存放負整數值,請問當宣告 int x;(假設 sizeof(x)為 4),並執行下 列兩種敘述後,x 的記憶體內容為何?請使用 16 進制來表達記憶體內容。

[1]x =1; [2]x =-1;

Ans:(1) 0x00000001 (2) 0xfffffffe

17.經由下列運算,length 的整數值應該為多少?

int length;

char a = ‘e’;

char b = ‘o’;

length = b – a;

(1) 11 (2) 12 (3) 13 (4) 14 (5) 15 Ans:無解,答案應為 10

(3)

18.經由下列運算,請問 result1、result2 的值為多少?

float a=100,b=30,c=20,result1,result2;

result1=a+b+c;

result2=a/b/c;

Ans:

result1=150.000000 result2=0.166667

19.經由下列運算,請問 result 的值為多少?

int a=25,b=4;

int result=a/b;

Ans:result = 6

20.下列何者為真?

a = sizeof(int);

b = sizeof(unsigned short int);

c = sizeof(double);

d = sizeof(char);

(1) a > b > c > d (2) d > c > b > a (3) c > a > b > d (4) c > a = b > d (5) c > a > b = d

Ans:(5) c > a > b = d

實作題

1.假設 x,y,z 的初始值為 1,請預測下列運算式執行之後的變數 x,y,z 的值,並撰寫 程式證明您的預測是對的。

z = ++x-y++;

z = z + x++ + ++y;

(4)

2.撰寫程式,求出下列 result 的值。

int x;

float y;

float result;

x = 15;

y = 7.125;

result = (float) x/y;

3.撰寫程式,求出下列 result 的值。

int x;

float y;

float result;

x = 15;

y = 7.125;

result = (float) x/y;

(5)

4.請先利用筆或計算機計算右列公式,求出 x 之值,然後再撰寫程式,求出右列數學 公式 x 之值(請宣告適當的資料型態)。若發現兩者有所不同,則請修正運算式或資料 型態。

a=2 b=6 c=4 d=5 e=6

x = {(b^2 – 4*a*c)/[d+[1/(2*e)]]}

5.下列是關於前置後置運算子的練習,請修正程式(改變其中一個運算子),使其符合 執行結果。

(6)

6.下列是關於字元編碼資料的程式,請修改其數值,使之符合執行結果。

7.下列是關於 overflow 的示範程式,亦即當資料型態不足以存放資料時會產生非預期 的效果。請修改資料型態的宣告,使之符合執行結果。

(7)

8.下列是 underflow 的示範程式,亦即當精確度不足,將導致喪失完整的資料,請修 改資料型態的宣告,使之符合執行結果。

9.下列是資料型態轉換的範例,請修改程式碼,使之符合執行結果。

(8)

10.下列是資料型態轉換的範例,請修改程式碼,使之符合執行結果。

參考文獻

相關文件

透過Java Servlet 程式存取資料庫.

下列哪一種記憶體屬於非揮發性記憶體, 不會因電源關閉而使其中的資料消 失, 但是可以透過電壓的方式重複抹除資料, 可用於基本輸入/ 輸出系統 (Basic Input / Output System,BIOS)

(續下頁).. 報名資料若需修改(限於考生報名後更名、變更通訊方式及聯絡電話使用),期間若有

sort 函式可將一組資料排序成遞增 (ascending order) 或 遞減順序 (descending order)。. 如果這組資料是一個行或列向量,整組資料會進行排序。

 設備身分資料庫 (equipment identity register; EIR)是用來存放有關手機設備 的身分資訊。.  本籍註冊資料庫 (home

四、輸入與輸出全為純文字資料,每筆輸入資料可能包含多組測試資料。程式應在開始 執行後不經由任何手動操作,自動由標準輸入 (standard input) 讀取資料,並將結果 輸出至標準輸出

四、輸入與輸出全為純文字資料,每筆輸入資料可能包含多組測試資料。程式應在開始執 行後不經由任何手動操作,自動由標準輸入 (standard input) 讀取資料,並將結果輸 出至標準輸出

形式語言 編譯程式 設計 線性代數 離散數學 資料結構. 與演算法下 資料庫系統 系統程式 作業系統