第四章 流程控制(一) if,if-else 與 switch

Slides:



Advertisements
Similar presentations
CSIM, PU C Language Introduction to the C Programming Language 重覆敘述 (for,while,break,continue) 適合重複性的計算或判斷.
Advertisements

第一單元 建立java 程式.
Loops.
战争结束了 年11月,听到停战的消息,巴黎街头人们欣喜若狂。法国总理克里孟梭说:“吻我的姑娘有500多个了。”
项目五——校园一卡通程序功能模块化设计 5-1项目显示查询和退出函数设计.
程序设计基础知识.
第 5 章 流程控制 (一): 條件分支.
Chapter 5 迴圈.
程式設計實作.
Introduction to the C Programming Language
C语言程序设计 第五章 选择结构程序设计.
Class 2 流程控制-選擇敘述與迴圈.
Visual C++ introduction
適用於多選一 可減少if 與 else配對混淆的錯誤.
第4章 选择结构程序设计 4.1 选择结构和条件判断 4.2 用if语句实现选择结构 4.3关系运算符和关系表达式
第4章 选择结构程序设计 4.1 选择结构和条件判断 4.2 用if语句实现选择结构 4.3关系运算符和关系表达式
C程序设计.
If … else 選擇結構 P27.
C 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
Introduction to the C Programming Language
Introduction to the C Programming Language
流程控制 大綱 傳遞參數給main()方法 流程控制的用途與種類 if判斷敘述 switch 判斷敘述.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
QQ: 李祥 QQ: 欢迎多种方式的学习交流,祝大家学有所成.
Function.
Introduction to the C Programming Language
Chap 3 分支结构 3.1 简单的猜数游戏 3.2 四则运算 3.3 查询自动售货机中商品的价格.
第四章 C 语言中的输入和输出.
1. 說明一個一維整數陣列passwd,下標範圍0至49 2. 在屏幕顯示 "Enter password"
C语言 程序设计基础与试验 刘新国、2012年秋.
Introduction to the C Programming Language
邏輯關係運算 == 等於 & 且 (logical and) ~= 不等於 | 或 (logical or) < 小於
程式設計實習課(四) ----C 函數運用----
第一單元 建立java 程式.
数组 梁春燕 华电信息管理教研室.
分支宣告與程式設計 黃聰明 國立臺灣師範大學數學系
目录 9.1 结构体类型 9.2 共用体类型 9.3 枚举类型 9.4 类型声明符typedef 1.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
JAVA 程式設計 資訊管理系 - 網路組.
程式結構&語法.
輸入&輸出 函數 P20~P21.
4 條件選擇 4.1 程式基本結構 循序式結構 選擇式結構 重複式結構 4-3
for 迴圈 while迴圈 do-while迴圈 break 與 continue goto 與 標籤 程式觀摩
CH05. 選擇敘述.
第11章 位运算 为了节省内存空间,在系统软件中常将多个标志状态简单地组合在一起,存储到一个字节(或字)中。C语言是为研制系统软件而设计的,所以她提供了实现将标志状态从标志字节中分离出来的位运算功能。 所谓位运算是指,按二进制位进行的运算。 11.1 数值在计算机中的表示 11.2.
浙江长征职业技术学院—计算机与信息技术系—相方莉制作
輸出與輸入(I/O).
C程序设计.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
第3章 数据类型、运算符与表达式.
Introduction to the C Programming Language
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
第三章 基本的輸出與輸入函數 (Basic Output & Input Function)
第四章 C 语言中的输入和输出.
第3章 最简单的C程序设计 3.1 顺序程序设计举例 3.2 数据的表现形式及其运算 3.3 C语句 3.4 数据的输入输出.
本节内容 指针类型.
第五章 逻辑运算和判断选取控制 §5.1 关系运算符和关系表达式
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
第七章  数 组.
C/C++基礎程式設計班 字元與字串 講師:林業峻 CSIE, NTU 3/14, 2015.
適用於多選一 可減少if 與 else配對混淆的錯誤.
多重條件選擇敘述
Programming & Language Telling the computer what to do
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Q1(a) 小偉打算編寫一個程序。該程序把兩個44的表內的數字相加。表3內的數字是由表1和表2應格子內的數字相加而成。例如:
C语言基础学习 从外行到入门.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Presentation transcript:

第四章 流程控制(一) if,if-else 與 switch 關係運算子 與 邏輯運算子 條件跳躍 if 與 if-else 條件運算子 ?: 巢狀 if 與 if-else 多重選擇 switch 程式觀摩

關係運算子 關係運算子用於 比較兩數的大小關係 > (大於) >= (大於或等於) < (小於) 關係運算子用於 比較兩數的大小關係 > (大於) >= (大於或等於) < (小於) <= (小於或等於) == (等於) != (不等於) 例 a > b 是一個關係運算式,其值是一個邏輯值(真或假),C語言通常用數值 0 代表假,1 代表真(只要不是 0 就視為真)

邏輯運算子 邏輯運算子是用於邏輯值的運算,大多用來組合各種比較的條件 ,結果為邏輯值 && 符號代表 AND (及) 運算 || 符號代表 OR (或) 運算 ! 符號代表 NOT (非) 運算 例 a > b && b > c 是一個邏輯運算式

if 的語法 當程式中需檢查某種狀況或條件是否發生時,可使用 if 敘述來控制。語法如下: i f (判斷的條件) { 若條件成立(邏輯為真), 則進行某些處理 . }

if 敘述的流程圖

if 的用法 例如 if (n==0) { printf("n is zero"); }   用於判斷當 n 值為 0 時,印出 "n is zero" 的訊息

if else的語法 if-else 敘述通常用於根據某種條件是否滿足,而分別從事兩種不同的處理步驟。其語法如下: if (條件判斷) { 條件成立所進行的處理 } else 條件不成立所進行的處理

if else 敘述的流程圖

if else 的用法 例如 if (a>b) { printf("%d > %d", a, b); big=a; } big=b;

條件運算子 ?: 語法如下: (條件判斷) ? 條件為真時的處理 : 條件為假時的處理   (條件判斷) ? 條件為真時的處理 : 條件為假時的處理 這個問號 ? 與冒號:是視為一體的,合起來構成一個運算子。 例如, (n==0) ? printf("is zero") : printf("is not zero");

【範例 4-4-1】 試使用條件運算子 ?:,求出某數的絕對值。 6 main() 7 { 8 float n, absn; 9 7 { 8 float n, absn; 9 10 printf("Enter a number : "); 11 scanf("%f",&n); 12 absn = (n < 0) ? -n : n ; 13 14 printf("absolute value of %f is %f \n",n,absn); 15 }

巢狀 if 的流程圖

if else 多重選擇的流程圖

【範例 4-5-2】 試設計一個C程式,用 if else 敘述,判斷所輸入的整數是正數、負數或零。 8 int num; 9 10 printf("Enter an integer number : "); 11 scanf("%d",&num); 12 if (num > 0) 13 printf("%d is positive\n",num); 14 else if (num < 0) 15 printf("%d is negative\n",num); 16 else 17 printf("%d is zero\n",num);

多重選擇 switch 的語法 switch (運算式值) { case 數值1 : 主體1; break; case 數值2 : 主體2; case 數值n : 主體n; default : 其他主體; }

【範例 4-6-1】p1/2 將範例 4-5-4 改用 switch 敘述來完成。 6 main() 7 { 7 { 8 float num1, num2; 9 char ch; 10 11 printf("Enter number1 : "); 12 scanf("%f",&num1); 13 printf("Enter number2 : "); 14 scanf("%f",&num2); 15 getchar(); /* skip '\n' the Enter key pressed in scanf() */ 16 printf("Which operation ( + - * / ) ? "); 17 ch = getchar();

【範例 4-6-1】p2/2 18 switch (ch) 19 { 20 case '+' : 19 { 20 case '+' : 21 printf("%f + %f = %f \n",num1,num2,num1+num2); 22 break; 23 case '-' : 24 printf("%f - %f = %f \n",num1,num2,num1-num2); 25 break; 26 case '*' : 27 printf("%f * %f = %f \n",num1,num2,num1*num2); 28 break; 29 case '/' : 30 printf("%f / %f = %f \n",num1,num2,num1/num2); 31 break; 32 default : 33 printf("%c is an invalid operator\n",ch); 34 break; 35 }

程式觀摩【範例 4-7-1】 p1/2 設計一個程式來判斷所按下的鍵,是那一個功能鍵。 10 printf("Press a function key : "); 11 ch = getch(); 12 putchar('\n'); 13 if (ch == 0x00) 14 { 15 ch = getch(); 16 printf("The key you pressed is a function key : ");

程式觀摩【範例 4-7-1】 p2/2 17 switch (ch) 18 { 19 case 0x3B : printf("F1"); 20 break; 21 case 0x3C : printf("F2"); 22 break; 23 case 0x48 : printf("UP"); 24 break; 25 case 0x50 : printf("DOWN"); 26 break; 27 case 0x4B : printf("LEFT"); 28 break; 29 case 0x4D : printf("RIGHT"); 30 break; 31 default : printf("CODE 00 %02X\n",ch); 32 break; 33 }

【範例 4-7-1】的輸出畫面 Press a function key : (press F1 key) The key you pressed is a function key : F1   Press a function key : (press UP arrow key) The key you pressed is a function key : UP    Press a function key : (press F9 key) The key you pressed is a function key : CODE 00 43 Press a function key : (press 'a' key) The key you pressed is a normal key : a