--- tags: C++, 程式設計 --- # C++ 程式設計 變數 (上) ## 一、變數格式 | 整數 | 浮點數 | 字元 | 布林 | |:--------------:|:-------------------:|:-----------:|:-----------:| | short (2Bytes) | float(4Bytes) | char(1Byte) | bool(1Byte) | | int (4Bytes) | double(8Bytes) | | | | long (4Bytes) | long double(8Bytes) | | | | unsigned 無號數 | | --------------- | | unsigned int | | unsigned double | | unsigned char | ## 二、變數宣告 ### (一)以整數舉例 int a,b ; //宣告兩個整數名稱分別為a,b a = 10 //把10放進變數a中 cout << a << endl; //輸出: 10 cout << "a=" << a << endl; //輸出: a=10 b=a //把a(a=10)放進變數b中 cout << "b=" << b << endl; //輸出: b=10 ### (二)無法定義詞彙 #### 有些詞彙已有特殊功能則無法定義成變數 變數開頭也無法定義數字如: 3k (X) 但 k3 可以 ![Uploading file..._1o8s1ruwm]() ### (三)查詢大小 #### 指令為: sizeof (單位為Bytes) sizeof(int) //輸出: 4 (Bytes) int a ; sizeof(a) //輸出: 4 (Bytes) sizeof(double) //輸出: 8 (Bytes) ### (四)以字元舉例 char a1,a2; a1 = 'a' ; //將a字元放進a1中 //''單引號內為字元,""雙引號內為字串(string) a2 = 65 ; //char字元若使用數字會為 ASCII碼 故 a2 = A ; //ASCII碼如下: ![Uploading file..._m17uey4rz]() ### (五)以浮點數為例 float f=1.23456789101112131415f; //輸出: 1.23457 double d=1.23456789101112131415; //輸出: 1.23457 ### (六)指定顯示位元數 cout.precision(20); //顯示20位元 //f的輸出:1.2345678806304931641 【精度較低】 //d的輸出:1.2345678910111212989 【精度較高】 ### (七)以布林為例 ```cpp= bool a,b,c; //宣告a,b變數為布林型態 a = 1 ; cout << a << endl; //輸出為 1(表示True) b = 2 ; cout << a << endl; //輸出為 1 (表示True(除了0皆為False)) c = 0 ; cout << b << endl; //輸出為 0(表示False) cout << boolalpha << a <<endl << b <<endl << c <<endl; //boolalpha:將0/1轉為True & False //輸出為:True True False ``` ### (八)初始設定、輸入設定 ```cpp= //【初始設定】 //【方法一】 int a,b; a=100; b=200; //【方法二】 int a = 100 , b = 200; ``` --- ```cpp= //【輸入設定】 int IQ ; //宣告一個整數變數IQ cin >> IQ ; //(請使用者自行輸入)給予IQ變數一個值 //(假設輸入180) //輸出: 180 cout << "我的IQ為" << IQ << endl; // 輸出: 我的IQ為180 ``` ## 二、練習 ### (一)題目一: 請撰寫一個程式,利用ASCII碼,將小寫字母z,轉換成大寫字母Z,然後從螢幕輸出 #### 1、程式碼(答案不唯一): ```cpp= #include <iostream> using namespace std; /*題目1:請撰寫一個程式,利用ASCII碼,將小寫字母z,轉換成大寫字母Z,然後從螢幕輸出.*/ int main() { char a, b; a = 122; cout << "a = " << a << endl; b = a-32; cout << "轉換後" << endl << "a = " << b << endl; //system("pause"); return 0; } ``` #### 2、圖示: ![](https://i.imgur.com/vcLWLvf.png) ### (二)題目二: 請撰寫一個程式,宣告變數 a=10, b=101.7, c='c',然後從螢幕上輸出這3個變數的值 #### 1、程式碼(答案不唯一): ```cpp= #include <iostream> using namespace std; /*題目2:請撰寫一個程式,宣告變數 a=10, b=101.7, c='c',然後從螢幕上輸出這3個變數的值*/ int main() { int a = 10; float b = 101.7; char c = 'c'; cout << "a=" << a << endl << "b = " << b << endl << "c = " << c << endl ; system("pause"); return 0; } ``` #### 2、圖示: ![](https://i.imgur.com/6lxr0N9.png) ### (三)題目三: 若y=2*x,是寫一個程式讓使用者輸入x的值,然後程式求出並顯示y的值 #### 1、程式碼(答案不唯一): ```cpp= #include <iostream> using namespace std; /*題目3:若y=2*x,是寫一個程式讓使用者輸入x的值,然後程式求出並顯示y的值*/ int main() { int x, y; cout << "請輸入x值:" ; cin >> x; y = x * 2; cout << "計算結果:" << "y = " << y << endl; system("pause"); return 0; } ``` #### 2、圖示: ![](https://i.imgur.com/YdZq7ju.png)