5 重複迴圈 5.1 增減運算符號 增量運算符號 減量運算符號

Slides:



Advertisements
Similar presentations
1 第 3 章 C++ 中的条件与循环 第 3 次见面! acm.nefu.edu.cn/C++_03.ppt.
Advertisements

While 迴圈 - 不知重複執行次數
CSIM, PU C Language Introduction to the C Programming Language 重覆敘述 (for,while,break,continue) 適合重複性的計算或判斷.
第一單元 建立java 程式.
計算機程式語言實習課.
營利事業所得稅查核準則 相關概念介紹 南區國稅局 新營分局 林俊標 各位學員大家好:
迴圈 迴圈基本觀念 while迴圈 do 迴圈 for迴圈 巢狀迴圈 迴圈設計注意事項 其他控制指令 迴圈與選擇的組合.
第4章 流程控制結構 4-1 結構化程式設計 4-2 程式區塊 4-3 簡單的條件控制敘述 4-4 巢狀條件敘述 4-5 多選一條件敘述
學 號:997I0010、997I0024 組 員:洪韋鈴、王婷婷 日 期: 指導老師:王立杰 老師
公司法(六) 股份有限公司 1.
計算機概論實習課- 程式設計使用C++ 教 授:童曉儒 教授 助 教:吳政鴻.
第五章 迴圈結構 授課老師:___________.
六、程式語言與邏輯 教學實例 --重複(迴圈)結構.
Chapter 5 迴圈.
程式設計實作.
Visual C++ introduction
簡易C++除錯技巧 長庚大學機械系
資料大樓 --談指標與陣列 綠園.
函數(一) 自訂函數、遞迴函數 綠園.
C++Primer 3rd edition 中文版 Chap 5
C++程序设计 第二讲 清华大学软件学院.
2 C++ 程式概論 2.1 C++ 程式結構 程式註解 // 插入標題檔 #include 2-3
第四章 流程控制(一) if,if-else 與 switch
保留字與識別字.
Java程式概觀.
第三單元 Control Structure II
嵌入式系統進階 日期 : 2018/12/4.
條件判斷指令 -if 指令 -switch 指令 迴圈指令 - for 迴圈 - while迴圈 - break、continue 指令
第三章 流程控制與例外處理 資訊教育研究室 製作 注意:本投影片僅供上課使用,非經同意,請勿散播或轉載。
第6章 迴圈結構 6-1 計數迴圈 6-2 條件迴圈 6-3 巢狀迴圈 6-4 While/End While迴圈 6-5 跳出與繼續迴圈
计算机网络讲义 第5章 批量数据处理—数组 一维数组 排序和查找 二维数组 字符串.
Introduction to the C Programming Language
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
邏輯關係運算 == 等於 & 且 (logical and) ~= 不等於 | 或 (logical or) < 小於
C++语言程序设计 第二章 C++简单程序设计.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
計數式重複敘述 for 迴圈 P
第六章 安全衛生工作守則 6-1 前 言  6-2 訂定依據相關法令規定  6-3 工作守則製作程序及製作前應注意事項  6-4 如何訂定適合需要之安全衛生工作守則  6-5 結 論.
第一單元 建立java 程式.
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第2章 C++流程控制语句 if 语句 switch语句 for语句 while语句 do - while语句 break语句
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
第4讲 C++程序控制结构(二) 4.1 循环结构 4.2 转向控制 4.3 综合案例分析.
義守大學電機工程學系 陳慶瀚 第4章 VHDL Sequential語法 義守大學電機工程學系 陳慶瀚
C++大学基础教程 第3章 C++控制语句 北京科技大学 信息基础科学系.
條件判斷指令 -if 指令 -switch 指令 迴圈指令 - for 迴圈 - while迴圈 - break、continue 指令
程式結構&語法.
第 03 章 流程控制 3.1 流程控制的運算式 3.2 選擇結構 3.3 迴圈結構 3.4 實例.
4 條件選擇 4.1 程式基本結構 循序式結構 選擇式結構 重複式結構 4-3
第三章 C++的语句和简单的程序设计 主要内容:
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
1.2 C语言程序的结构与书写规则 一、 C语言程序的总体结构
C 语言程序设计 程序的循环结构 电大崇信县工作站 梁海亮.
CH05. 選擇敘述.
第2章 算法与C语言程序 程序 (1)数据的描述:数据的类型和组织形式(数据结构) (2)操作的描述:操作步骤(算法) 沃思指出:
期末考.
挑戰C++程式語言 ──第8章 進一步談字元與字串
程式邏輯結構 Chapter 6 認知 認識何謂流程圖及流程圖各種符號的意義。
實作輔導 本周5/5(六)安排實作輔導 二時段: 周六 11:00~12:30 周六13:30~15:30.
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
Ch07. 函式.
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
Do While 迴圈 東海大學物理系‧資訊教育 施奇廷.
迴圈(重複性結構) for while do while.
第五章 運算關係式(Expression).
迴圈(重複性結構) for while do while.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
方法(Method) 函數.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Presentation transcript:

5 重複迴圈 5.1 增減運算符號 5-2 5.1.1 增量運算符號 ++ 5-2 5.1.2 減量運算符號 -- 5-4 5 重複迴圈 5.1 增減運算符號 5-2 5.1.1 增量運算符號 ++ 5-2 5.1.2 減量運算符號 -- 5-4 5.1.3 ++/--與算術運算 5-6 5.1.4 ++/--與關係運算 5-7 5.2 迴圈敘述 5-8 5.2.1 前測試迴圈while 5-9 5.2.2 計數器counter 5-12 5.2.3 後測試迴圈do-while 5-16 5.2.4 計數型迴圈for 5-23 5.3 巢狀迴圈 5-28 5.3.1 while巢狀迴圈 5-29 5.3.2 do-while巢狀迴圈 5-30 5.3.3 for巢狀迴圈 5-31 5.4 無窮迴圈 5-33 5.4.1 無窮while 5-33 5.4.2 無窮do-while 5-33 5.4.3 無窮for 5-34 5.5 中斷與繼續 5-35 5.5.1 break敘述 5-35 5.5.2 continue敘述 5-39

5.1 增減運算符號 雖然C++ 語言已經提供了算術運算符號的加法(+)與減法(-)與混合指定運算符號的加法指定(+=)與減法指定(-=)等符號,但為了提供使用者更多的選擇,C++ 語言還提供增量(++)與減量(--)運算符號。

5.1.1 增量運算符號 ++ 增量(increment)運算就是運算元加1。 範例一 範例二 5.1.1 增量運算符號 ++ 增量(increment)運算就是運算元加1。 範例一 num = num + 1; //num的值加1 num += 1; //num的值加1 範例二 num++; //功能與num=num+1相同

5.1.1 增量運算符號 ++ (續) ++變數 //前置型增量 變數++ //後置型增量 前置型增量 int num = 1; 5.1.1 增量運算符號 ++ (續) ++變數 //前置型增量 變數++ //後置型增量 前置型增量 int num = 1; cout << ++num; //先執行++num=2,再輸出num 後置型增量 cout << num++; //先輸出num=1再執行num++

5.1.2 減量運算符號 -- 減量(decrement)運算就是運算元減1。 範例一 範例二 5.1.2 減量運算符號 -- 減量(decrement)運算就是運算元減1。 範例一 num = num - 1; //num的值減1 num -= 1; //num的值減1 範例二 num--; //功能與num=num-1相同

5.1.2 減量運算符號 – (續) --變數 //前置型減量 變數-- //後置型減量 前置型減量 int num = 1; 5.1.2 減量運算符號 – (續) --變數 //前置型減量 變數-- //後置型減量 前置型減量 int num = 1; cout << --num; //先執行--num=2,再輸出num 後置型減量 cout << num--; //先輸出num=1再執行num--

5.1.3 ++/--與算術運算式 後置增量與運算式 a = 5; b = 2; 5.1.3 ++/--與算術運算式 後置增量與運算式 a = 5; b = 2; x = a * b++; //先x=a*b=10,後b=b+1=3 前置增量與運算式 x = a * ++b; //先b=b+1=3,後x=a*b=15

5.1.3 ++/--與算術運算式 (續) 錯誤的前置增量與運算式 a = 5; b = 2; 5.1.3 ++/--與算術運算式 (續) 錯誤的前置增量與運算式 a = 5; b = 2; x = ++(a * b); //錯誤, 需要Lvalue 錯誤的後置增量與運算式 x = (a * b)++; //錯誤, 需要Lvalue

5.1.4 ++/--與關係運算式 後置減量與運算式 n = 0; 5.1.4 ++/--與關係運算式 後置減量與運算式 n = 0; if(n-- <= 0) //先判斷n<0,後n=n-1=-1 cout << n << " 是負數"; 前置減量與運算式 if(--n < 0) //先n=n-1=-1,後判斷n<0

5.2 迴圈敘述 非迴圈敘述 int i = 1; //i=1 cout << i << endl; 5.2 迴圈敘述 非迴圈敘述 int i = 1; //i=1 cout << i << endl; i = i + 1; //i=1+1=2 i = i + 1; //i=2+1=3 i = i + 1; //i=3+1=4 i = i + 1; //i=4+1=5 迴圈敘述 for(int i=1; i<=5; i++) cout << i << endl;

5.2.1 前測試迴圈while 單行型while敘述 while (條件運算式) 單一敘述; 區塊型while敘述

5.2.1 前測試迴圈while (續) 範例 cin >> year; //輸入year while (year != 0) //若year!=0則迴圈成立 { cin >> year; //輸入year }

5.2.1 前測試迴圈while (續)

5.2.2 計數器counter

5.2.2 計數器counter (續) 範例一 int count = 1; //計數值count = 1 while (count <= 9) //設定while條件運算式 { cout << count; //輸出count值 count++; //計數值count加1 } 範例二

5.2.2 計數器counter (續) 範例三 int count = 0; //計數值count = 0 while (count < 9) //設定while條件運算式 { count++; //計數值count加1 cout << count; //輸出count值 } 範例四 while (count++ < 9) //設定while條件運算式

5.2.2 計數器counter (續) 範例五 int count = 10; //計數值count = 10 while (--count >= 1) //設定while條件運算式 cout << count; //輸出count值

5.2.3 後測試迴圈do-while 單行型do-while迴圈敘述 do 單一敘述; while (條件運算式);

5.2.3 後測試迴圈do-while (續)

5.2.3 後測試迴圈do-while (續) 範例一 do { cin >> year; //輸入year } while (year != 0); //若year!=0則迴圈繼續

5.2.3 後測試迴圈do-while (續) 範例二 (計數型do-while) int count = 1; //計數值count = 1 do { cout << count; //輸出count值 count++; //計數值count加1 } while (count <= 9); //設定while條件運算式 範例三 (計數型do-while) } while (++count <= 9); //設定while條件運算式

5.2.3 後測試迴圈do-while (續)

5.2.3 後測試迴圈do-while (續) 範例四 (遞減型計數) int count = 9; //計數值count = 9 do cout << count; //輸出count值 while (--count > 0); //設定while條件運算式

5.2.4 計數型迴圈for 單行型for迴圈敘述 for ( 起始運算式; 條件運算式; 更新運算式 ) 單一敘述; 區塊型for迴圈敘述 範例 for(int i=1; i<=9; i++) cout << i << ' ';

5.2.4 計數型迴圈for (續) 範例二 for (int i=0; i<10; i++) //宣告並使用i變數 cout << 2*i << endl; for (int i=0; i<10; i++) //重複宣告並使用i變數 cout << i*i << endl; 範例三 int i = 0; //宣告並起始變數i for (i=0; i<10; i++) //使用i變數 for (i=0; i<10; i++) //重複使用i變數

5.2.4 計數型迴圈for (續)

5.2.4 計數型迴圈for (續) 基本型for迴圈敘述 int sum = 0; //宣告並起始sum for (int count = 1; count <= MAX; count++) //for敘述 { //start of for sum += count; //迴圈敘述 } //end of for 簡化型for迴圈敘述 for (int count = 1; count <= MAX; count++) // for敘述

5.2.4 計數型迴圈for (續) 省略型for迴圈敘述 int count = 1, sum = 0; //宣告與起始count,sum for ( ; count <= MAX; count++) //省略起始運算式 sum += count; //迴圈敘述 for ( ; count <= MAX; ) //省略起始與更新運算式 sum += count++; //迴圈敘述

5.2.4 計數型迴圈for (續) 單行型for迴圈敘述 int count, sum; //宣告count, sum for (count = 1, sum = 0; count <= MAX; sum += count, count++);

5.3 巢狀迴圈 巢狀迴圈(nested loops)就是在迴圈中包含另一個迴圈,也就是大迴圈包小迴圈。而且可以在for迴圈中包含while迴圈或do迴圈,反之亦然。

5.3.1 while巢狀迴圈 範例 int count1 = 1; //宣告外層迴圈計數值 while (count1 <= 2) //定義外層while迴圈 { //外層while迴圈起點 int count2 = 1; //宣告內層迴圈計數值 while (count2 <= 3) //定義內層while迴圈 { //內層while迴圈起點 cout << count1 * count2; //輸出運算值 count2++; //內層計數值加1 } //內層while迴圈結束點 count1++; //外層計數值加1 cout << endl; //跳行 } //外層while迴圈結束點

5.3.2 do-while巢狀迴圈 範例 int count1 = 1; //宣告外層do迴圈計數初值 do //定義外層do迴圈 cout << count1 * count2; //輸出運算值 while (++count2 <= 3); //內層while條件與返回點 cout << endl; //跳行 } while (++count1 <= 2); //外層while條件與返回點

5.3.3 for巢狀迴圈 範例 for (count1 = 1; count1 <= 2; count1 ++) //外層迴圈 { cout << count1 * count2; }

5.4 無窮迴圈 無窮迴圈就是迴圈將永遠的循環下去,方法是另for或while敘述的條件永遠成立則形成for或while的無窮迴圈。 5.4 無窮迴圈 無窮迴圈就是迴圈將永遠的循環下去,方法是另for或while敘述的條件永遠成立則形成for或while的無窮迴圈。 若要中斷無窮迴圈,則可以在迴圈中加if敘述,再配合5.5.1節的break敘述中斷迴圈。

5.4.1 無窮while 範例 while (true) //條件永遠成立(true) { cout << "forever"; }

5.4.2 無窮do-while 範例 do { cout << "forever"; } while (true); //條件永遠成立(true)

5.4.3 無窮for 範例 for ( ; ; ) //無起始也無終止 { cout << "forever"; }

5.5 中斷與繼續 中斷(break)敘述用來提前結束迴圈的執行。 繼續(continue)敘述則用來跳過某些敘述而繼續下一個計數。

5.5.1 break敘述 break; 範例 for (count = 0; count <= stringlength; count++) { if (string[count] == letter) //若條件成立 break; //中斷for迴圈 }

5.5.2 continue敘述 continue; 範例 for (count = 1; count <= maxnum; count++) { if (count % 3 != 0) //若不是3的倍數 continue; //返回迴圈起點 cout << count; //若非3的倍數則不顯示 }