Microsoft PowerPoint - 02_運算.pptx

Similar documents
CHAPTER VC#

CC213

Java 程式設計入門

C/C++语言 - C/C++数据

WWW PHP Comments Literals Identifiers Keywords Variables Constants Data Types Operators & Expressions 2

Microsoft Word - 投影片ch03

!49 第 二講 資料型態 運算子與表示式 講師 : 李根逸 (Ken-Yi Lee),

C C

VB.Net

Microsoft PowerPoint - ICP_02_Basic_Data_Type.ppt [相容模式]

Microsoft PowerPoint - C_Structure.ppt

Microsoft PowerPoint - Chapter3

Microsoft Word - ch 校.doc

FY.DOC

C/C++语言 - 运算符、表达式和语句

Excel VBA Excel Visual Basic for Application

C/C++程序设计 - 字符串与格式化输入/输出

CHAPTER 1

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

c_cpp

3.1 num = 3 ch = 'C' 2

Microsoft PowerPoint - Bronson-v3-ch02.ppt [相容模式]

Microsoft PowerPoint - Class2.pptx

Microsoft Word - CPE考生使用手冊 docx

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

運算子多載 Operator Overloading

Microsoft Word - AEL 序.doc

Strings

Microsoft PowerPoint - 06_迴圈2.pptx

街街街街街街街街

PowerPoint Presentation

Microsoft PowerPoint - STU_EC_Ch02.ppt

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

Microsoft PowerPoint - 04-array_pointer.ppt

Microsoft Word - ACL chapter02-5ed.docx

Microsoft PowerPoint - CH02 Introduction to C++ Programming_輸入與輸出 [相容模式]

保母人員丙級應檢資料第二部份 doc

CC213


Microsoft PowerPoint - STU_C_Lang_CH13.ppt

第四講 資料型態及變數、常數

新版 明解C++入門編

C

51 C 51 isp 10 C PCB C C C C KEIL

untitled

Chapter 3

C 1

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

C/C++ - 函数


新・解きながら学ぶJava

02

Microsoft PowerPoint - sql2005_ch09.ppt

Microsoft Word - ACG chapter00c-3ed.docx

(Microsoft PowerPoint - \262\304\244\273\263\271)

碩命題橫式

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

Microsoft PowerPoint - 13_指標、資料傳遞2.pptx

Microsoft Word - xiuxinduanyu-2-doc.doc

PowerPoint Presentation

untitled

<4D F736F F D203136BCADBBD8D2E4D3EBD1D0BEBF2E646F63>

萧山中学课程建设方案.doc


Microsoft Word - 9pinggb_A4.doc

Microsoft Word - 9pinggb_A4-f4.doc

理 论 探 索 事 业 单 位 改 革 的 五 点 思 考 余 路 [ 摘 要 ] 事 业 单 位 改 革 是 中 国 改 革 的 重 要 环 节, 其 影 响 力 和 难 度 不 亚 于 国 有 企 业 改 革 本 文 着 重 围 绕 推 进 事 业 单 位 改 革 应 考 虑 的 五 个 方 面

日 本 位 于 亚 洲 东 部, 太 平 洋 西 北 角, 是 我 国 东 方 的 一 个 岛 国 在 洪 积 世 ( 注 1) 的 大 部 分 时 期 内, 日 本 与 大 陆 相 连 大 约 在 洪 积 世 晚 期 至 冲 积 世 ( 注 2) 初 期, 日 本 各 地 发 生 海 进, 出 现

2深化教育教学改革、创新人才培养模式

Microsoft Word - 9pinggb_let.doc

实 习 上 下 点 表 格 解 释 和 相 关 纪 律 要 求 : 1 表 格 中 所 有 名 词 都 为 简 称, 包 括 医 院 名 称 四 年 级 五 年 级 各 专 业 名 称 等 所 有 时 间 都 为 学 生 装 好 行 李 出 发 时 间, 请 提 前 0 分 钟 将 行 李 运 到

3 基 金 杠 杆 从 分 级 基 金 的 概 念, 我 们 知 道 了 分 级 基 金 的 A 份 额 是 每 年 获 得 固 定 收 益 的 稳 健 份 额,B 份 额 是 具 有 杠 杆 效 应 的 激 进 份 额 分 级 基 金 中 的 杠 杆 一 般 有 三 类 : 份 额 杠 杆 =(A

简报158期.doc

Microsoft Word - 9pingb5_let.doc

退休權益.ppt [相容模式]

Microsoft Word - 1.《國文》試題評析.doc

Ps22Pdf

$%%& ()*+, %&, %-&&%%,. $ %,, $,, & /$- 0(1 $%%& %& 234 %-%, 5&%6&633 & 3%%, 3-%, %643 -%%% :::; 7<9; %-%, 3$%$ :::;

# $# #!# # # # # # # %# # # &# # # # #! "

zt

2016 年 地 质 工 程 系 教 学 工 作 安 排 2016 学 年 我 系 将 在 总 结 过 去 工 作 的 基 础 上, 结 合 今 年 学 院 以 抓 质 量 强 内 涵 促 改 革 调 结 构 建 品 牌 细 管 理 重 过 程 为 宗 旨, 以 规 范 管 理 深 化 内 涵 为


Microsoft Word 養生與保健_中山大學_講義


萬里社區老人健康照護手冊

Microsoft Word - 強制汽車責任保險承保及理賠作業處理辦法 doc

Microsoft Word - 06.Understanding of Pregnancy and Birth.doc

(➂)11. 炎 炎 夏 日, 即 使 下 起 滂 沱 大 雨, 都 消 除 不 了 令 人 心 煩 的 暑 氣 這 句 話 主 要 想 表 達 什 麼? ➀ 夏 日 裡 經 常 下 著 滂 沱 大 雨, 令 人 心 煩 ➁ 下 著 滂 沱 大 雨 的 日 子, 可 以 消 除 暑 氣 ➂ 夏 日

範本檔

附 件 一 : 办 理 集 中 式 银 期 转 账 业 务 网 点 名 单 序 号 地 区 网 点 名 称 地 址 联 系 人 电 话 23 工 商 银 行 安 徽 省 铜 陵 百 大 支 行 铜 陵 市 长 江 东 路 50 号 鲁 桂 珍 工 商 银 行 安 徽

2. 二 年 級 吳 毓 秀 老 師 : 感 謝 午 餐 公 司 平 時 均 能 準 時 送 餐, 但 希 望 能 不 要 使 用 加 工 品, 且 學 生 反 映 希 望 能 多 加 蛋 品 的 食 物 3. 三 年 級 柯 阿 青 老 師 : 雞 肉 有 血 水 味, 請 午 餐 公 司 能 調

高雄市立五福國民中學九十四學年度第一學期第三次段考二年級本國語文學習領域試題卷

人 物 春 秋 杨 永 泰 将 其 削 藩 策 略 概 括 为 : 以 经 济 方 法 瓦 解 冯 玉 祥 的 第 二 集 团 军, 以 政 治 方 法 解 决 阎 锡 山 的 第 3 集 团 军, 以 军 事 方 法 解 决 李 宗 仁 的 第 四 集 团 军, 以 外 交 方 法 对 付 张 学

台北老爺校外實地參訪結案報告


糖尿病食譜



,,,,,,, (,, ),,,,,,,,,,,,,,, ,,, 4 11,, ( ),,,, ( ), :, ( ),,, 1995, 66 ; ( ),, 1996, , 3-4,,


Transcription:

回顧 第一個程式 基本架構 五行必寫的公式 註解的寫法 cout << endl 變數 (variables) 變數名稱 限制? 變數型別 (type) 字元型別 char 整數型別 short, int, long 浮點數型別 float, double Lecture 2 變數 ( 續 ) C++ 字串 (string) 算術運算與布林運算 3 4 意義 變數型態 記憶體量 * 數值範圍 準確度 (Accuracy) 字元 char -28 ~ +2 精確 整數 short int 2-3268 ~ 326 精確 int 4-2 3 ~ 2 3 - 精確 long int 4-2 3 ~ 2 3 - 精確 浮點數 float 4-3.4x0 38 ~ +3.4x0 38 6- 位有效數字 double 8 -.x0 308 ~ +.x0 308 4 位有效數字 long double 8 -.x0 308 ~ +.x0 308 4 位有效數字 * 單位為 bytes 記憶體量與所使用之作業系統 硬體 以及編譯器等皆有關係, 本表則依據 win32 作業系統之 Visual C++ 9.0 2-.cpp char a = 'A'; cout << (int) a << endl; a = 6; cout << sizeof(a) << endl; cout << sizeof(char) << endl; A 6 C 宣告一個變數 a, 設定初值為 A 字元 輸出 a 變數的值 以整數方式輸出 a 變數的值 將 6 存入 a 變數輸出 a 變數的值輸出 a 變數所佔記憶體大小 輸出 char 型別所佔記憶體大小 6 整數型態 (integer) 三種 :short int int long int short int long 長度與 CPU & 編譯器 (compiler) 有關 一般來說 int: 4 bytes (32 bits 2 32 =4,294,96,296 ~ 40 億 ) short (int): 短整數, 佔用記憶體量 <= int long (int): 長整數, 佔用記憶體量 >= int Modifier ( 修飾字 ) : unsigned vs. signed unsigned int signed short 有號數或無號數 當資料不可能為負值時, 可使用無號數, 使可代表的數值大小擴大一倍 2-2.cpp short int a = 326; unsigned short b = 63; cout << a << ", " << b << endl; a = a + ; b = b + ; cout << a << ", " << b << endl; 326, 63-3268, 0 這裡所看到的情況稱為溢位 (overflow)

8 實數, 浮點數 (real or floating point numbers) 型態 float, double, long double 佔用記憶體量與 CPU & 編譯器 (compiler) 有關 目前一般來說 double: 8 bytes (64 bits) float: 佔用記憶體量 <= double double: 佔用記憶體量 >= double IEEE-4 規定了浮點數在記憶體裡的儲存方式 Example: float a; 宣告變數 a, 型別是浮點數 double b = 3.0e8; 宣告變數 b, 並初始化為 3x0 8 2-3.cpp double a = 3.49263899323846; float b = 3.e8; cout << b << endl; 宣告一倍精度浮點數 a 並存入 3.49.. 宣告一單精度浮點數 b 並存入 3.e8 (3x0 8 ) 3.49 3e+008 9 0 變數型態 variable type 布林值 (boolean) 型態 bool 用來儲存布林或邏輯運算的結果 : 真 (true) 或是假 (false) 之後會與決策判斷的指令一起使用 2-4.cpp bool a = false; bool b = true; bool c = 00; cout << b << endl; cout << c << endl; 宣告一布林變數 a, 並存入 false 宣告一布林變數 b, 並存入 true 宣告一布林變數 c, 並存入 00 輸出變數 a 的值輸出變數 b 的值輸出變數 c 的值 0 在 C/C++ 中, 非 0 值為真 (true),0 為假 (false) 2 常數變數 (constant variable) 在宣告變數時, 對於整數可使用修飾字 unsigned/signed 將一個整數或字元型態的變數宣告為無號數或有號數 另一個修飾字 const, 可用於前述的所有型別, 讓所宣告出來的變數成為常數變數 Example: const double a = 3.49; 在宣告常數變數時, 必需同時進行初始化的動作 程式內若試圖對常數變數進行修改, 將導致編譯錯誤 2-.cpp int a=3, c ; const int b=4; c = a + b; // b = ; cout << "a+b=" << c; 2

3 4 回顧一下 變數名稱 如何命名 命名限制 變數型態 字元 char a; a = 6; a= A ; 整數 int b; b = 0; 浮點數 double c = 3.49e; 布林數 bool T = true; bool F = false; 修飾字 : const unsigned, signed 字串 (string) 在 C++ 裡有兩種字串 C- 字串, 之後會介紹, 由 C 語言繼承過來 C ++ 字串, 方便易用, 但不能用在 C 語言 型別為 string 需要 #include <string> 記得在 C++ 裡字串前後需要加雙引號 " 6 2-6.cpp #include <string> string weather=" 今天天氣很好 \n"; cout << weather; weather=" 明天會下雨 \n"; cout << weather; 需有這一行才能使用 C++ 的字串功能 其中,\n 為一特別的字元, 會在印出時將列印位置移到下一列的開頭 宣告 weather 為字串型別的變數 回答以下問題 我今天想要儲存 3.49264, 應該選用何種變數型別? 今天有一個資料是 2, 那些變數型別可以使用? 今天我想要儲存一個字元 q, 可以使用何種變數型別? -4.2 可以使用何種變數型別儲存? 我要怎麼確定讓一個變數的值不會在程式被修改? 8 算術運算 Arithmetic operations 算術運算 arithmetic operations 我們在 -2.cpp 中已看過了兩個運算子 (+, =) 以進行算術運算 int a=3; int b, c; b = 4; c = a + b; cout << "a+b=" << c; 在 C/C++ 的算術運算中有以下重點 : 算術運算子與運算元 算術運算子的優先順序 型別轉換 3

9 20 2-.cpp int a=4; int b=4; cout << "a= " << a << endl; cout << "b= " << b << endl; cout << "a+b=" << a+b << endl; cout << "a-b=" << a-b << endl; cout << "a*b=" << a*b << endl; cout << "a/b=" << a/b << endl; cout << "a%b=" << a%b << endl; 試試看 請將以上程式的 a 改成 3,a/b 的結果? 將以上程式的變數形別改成 char, 結果? 將以上程式的變數形別改成 double, 結果? 2 22 二元算術運算子 = : 指定 (assignment) +: 相加 (addition) -: 相減 (subtraction) *: 相乘 (multiplication) /: 相除 (division) %: 取餘數 (modulus) a = 3 + 2; // a= b = 3 2; // b= c = 3 * 2; // c=6 d = 3 / 2; // d=. e = 3 % 2; // e= 運算的順序上與數學相同 : 先乘除後加減,% 視為除法運算 3 + 2 * 6 = 3 * 6 + 3 = 2 3 * 6 / 2 = 9 也同於數學運算式, 可用括號 ( ) 來改變運算的順序 (3 + 2) * 6 = 30 3 * (6 + 3) = 2 (3 * 6) / 2 = 9 2-8.cpp int a=2; int b; b = a + 3 * a; b = b + 3 * a; cout << "b+3 is " << b+3 << endl; 23 24 2-9.cpp short a=-30000; short b=0000; short c = a b; short d = a b / 000; short e = ( a b ) / 000; cout << "a=" << a << endl; cout << "c=" << c << endl; cout << "d=" << d << endl; cout << "e=" << e << endl; 3266 326-3268 -326-3266 (-30000 0000) (-3268) = 232 3268 + (-232) = 236 此種數字超出範圍的狀況, 專業術語稱為 Underflow ( 向下溢位 ) 若是加上去超出範圍, 稱為 Overflow ( 溢位 ) 一元運算子 (Unary Operation) 一元運算子即僅需一個運算元即可進行計算的運算子 ++: 將運算元的值遞增 (increment), 在算術運算時即為 + --: 將運算元的值遞減 (decrement), 在算術運算時即為 - 範例 : A=3; A++; A 變為 4 A--; A 的值變為 3 但是! 4

2 26 2-0.cpp 前置 (prefix) 與後置 (postfix) int A=; cout << A++ << endl; cout << ++A << endl; cout << A++ << endl; cout << A << endl; 8 前置 ++a --b ++c 在這行敍述執行之前完成該運算 D=++C; 後置 a-- b++ 在這行敍述執行之後再進行該運算 D=C++; C=C+; D=C; D=C; C=C+; 2. 推土機 請由 http://40.8.0.4/courses/cvb/202/lab/lab0.zip 請利用以下的操作將土堆移動到指定的位置 car.forward(); car.backward(); car.turnleft(); car.turnright(); car.slabdown(); car.movemoundup(); car.putmounddown(); // 前進 // 後退 // 左轉 // 右轉 // 放下置土板 // 搬起土堆 // 放下土堆