計算機概論:C/C++程式設計

 

 

2章、C++程式基本元素

 

 


授課教師:陳慶瀚

WWW : http://www.miat.ee.isu.edu.tw/cpp

E-mail : pierre@isu.edu.tw   

 

2.3 資料型別(Data Type)

我們先介紹最常用的四個基本的資料型別,那就是整數(Integer)、浮點數(Floating Point)、雙精度浮點數(Double)和字元(Character)

2.3.1 整數(Integer)
整數型態包括所有自然數(int,正數、負數及零)、沒有符號的整數(unsigned int,只有整數)、短整數(short)及長整數(long),用來定義整數型態的關鍵字為int,例如宣告一個變數sum為整數型態,其值為12的變數為

    int sum;

    sum = 20;

在一個32位元的作業系統 (如多數的UNIX電腦或Windows 2000) 中,一個整數的變數使用32位元(4 bytes)的記憶空間, 其值域從2,147,483,647 (231– 1) –2,147,483,648 (–231),但在16位元的作業系統(DOSWindows 95/98). 整數變數只使用16位元(2 bytes) 因此可以容納的整數值從–32,768 (–215)32,767 (215– 1)

2.3.2 浮點數(Floating Point)
實數是一種帶有小數的數,由於在電腦記憶體內部的特殊儲存方式,所以稱為浮點數。宣告浮點數的C++關鍵字為float,例如宣告一個變數money為浮點數型態,其值為34.12,我們可以如此寫:

    float money;

    money = 34.12;

其中34為整數部分,小數點後的12為小數部分。3.14159, 0.5, 1.0, 8.88均為浮點數。如果整數部分或小數部分為零,則顯示時,零的部分就會自動省略,如0.5就顯示為.53.0就顯示為3

 

浮點數的表示分為三個部分:正負號、4位數的實數和10的冪次(exponent),格式如下:

± f.fff x 10±e 

其中,

±                   正負號

f.fff            4位數的實數,  

±e                10的冪次

浮點數在輸出時使用的格式是

±f.fffE±e  

例如

浮點數格式

數值

+1.000E+0

1.0

+3.300E+5

33000.0

-8.223E-3

-0.008223

+0.000E+0

0.0

 

浮點數使用32位元的記憶空間來存放數值,它的值域範圍可以從3.4E-38 3.4E+38

 

2.3.3 雙精度浮點數(Double)
如果覺得浮點數所提供的值域範圍還不夠,雙精度浮點數提供了一個更高精度的資料型別。雙精度浮點數和浮點數一樣包含正數與負數,同時也以指數的格式來表示其數值。定義雙精度浮點數的關鍵字為double,例如宣告一個變數big為雙精度浮點數型態,其值為3.12E+7的變數為

    double big;

    big = 3.12E+7;

雙精度浮點數所提供的值域範圍從1.7E-3081.7E+308

 

2.3.4字元(Character)
字元是一個8 Bits(1 Byte)的資料型別,通常是用來存放文數字的的單一字元。定義字元的關鍵字為char,例如宣告一個變數letter為字元型態,其值為A的變數為

    char letter;

    letter = 'A';

注意,當指定字元A給變數letter時必須有兩個單引號框住。

範例程式2-3說明這些資料型態的使用:

/*----------------------------------------------------*/

//                  範例程式2-3

//               使用基本資料型態變數

//                  陳慶瀚,2001

/*----------------------------------------------------*/

    #include < iostream.h >

    void main()

    {

        int   sum;            // 宣告整數變數

        float money;         // 宣告浮點數變數

        char  letter;        // 宣告字元變數

        double pi;           // 宣告double變數

 

        sum = 10;            // 指定整數值

        money = 2.21;       // 指定浮點數值

        letter = 'A';        // 指定字元值

        pi = 2.01E6;     // 指定double數值

        cout<<"sum = "<<sum<<endl;

        cout<<"money ="<<money<<endl;

        cout<<"letter = "<<letter<<endl;

        cout<<"pi = "<<pi<<endl;

    }

 

程式執行結果:

sum = 10

money = 2.210000

letter = A

pi = 2.010000e+06


 

計算機概論:C/C++程式設計

義守大學電機系 陳慶瀚  
2001.10.02