if语句&switch语句
if语句
1 • 用if语句实现选择结构 • 选择结构的嵌套
2
3
• 练习题
§if 语句(条件选择语句)
If语句的三种形式
形式一:
格式:if (表达式) 语句 执行过程:
表达式
=0
非0
语句
main() { int x , y ; x=20 ; 没有”;” y=10 ; if (x>y) printf(“%d”,x); }
一般形式: if (条件1) if (条件2) else else if(条件3) else 语句1 语句2
内嵌if
语句3 语句4
内嵌if
if ~ else 配对原则:缺省{ }时,else总是和它上
面离它最近的未配对的if 配对。
if(……) if(……) if(……) else…... else…... else…...
非0
=0
表达式3
非0 语句1 语句2
=0
非0 语句3 语句n
格式:if (表达式1) 语句1 else if (表达式2) 语句2 else if (表达式3) 语句3 …… else if (表达式m) 语句m else 语句n 执行过程:
例:if (number>500) else if (number>300) else if (number>100) else if (number>50) else
例 考虑下面程序的输出结果
结果:-1
main() { int x=100,a=10,b=20; int v1=5,v2=0; if(a<b) if(b!=15) if(!v1) x=1; else if(v2) x=10; x= -1; pst=0.15 ; cost=0.1 ; cost=0.075 ; cost=0.05 ; cost=0 ;
if嵌套的六种形式
if嵌套的六种形式
“if嵌套的六种形式”这句话的意思是,在编程中,if语句可以嵌套在其他if语句中,形成六种不同的结构形式。
这种嵌套结构使得程序可以根据多个条件进行不同的判断和执行。
以下是if嵌套的六种形式:
1.单重if嵌套:这是最简单的嵌套形式,一个if语句内部包含另一个if语句。
2.双重if嵌套:两个if语句相互嵌套。
3.三重if嵌套:三个if语句相互嵌套。
4.多重if嵌套:多个if语句相互嵌套,形成复杂的条件判断结构。
5.if-else if-else嵌套:使用else if代替嵌套的if语句,结构更为清晰。
6.三元运算符的嵌套:使用三元运算符来简化条件判断,特别是当只有一个
条件成立时。
这六种形式代表了不同情况下使用嵌套if语句的常见方法。
总的来说,通过灵活使用这六种形式,可以根据实际需求构建出复杂的条件判断逻辑。
if语句break用法
if语句break用法什么是if语句在编程中,if语句用于根据特定条件的真假来执行不同的代码块。
if语句可以根据条件的判断结果选择性地执行或跳过一段代码。
break语句的作用在if语句中,break语句用于终止当前循环,即使循环条件未满足。
当break语句被执行时,循环立即停止,并且程序将跳出循环继续执行后续的代码。
if语句结构if语句通常由if关键字、条件表达式和代码块组成。
其基本结构如下:if condition:# 执行代码块statement在这个结构中,condition是一个布尔表达式,如果其结果为True,则执行代码块中的语句。
break语句的用法在if语句中,break语句通常与循环结合使用,用于提前终止循环。
当某个条件满足时,我们可以使用break语句来跳出循环,即使循环条件下一次迭代仍然成立。
以下是一个示例,说明了if语句和break语句的用法:i = 0while i < 10:if i == 5:breakprint(i)i += 1在上述示例中,使用while循环迭代数字0到9。
当i的值等于5时,执行了break语句,导致循环立即终止。
因此,只有0到4这五个数字被打印出来。
if语句和break语句的应用场景if语句和break语句在循环结构中经常被使用,主要用于以下几种场景:1.条件满足时提前跳出循环通过在if语句中使用break语句,可以在满足特定条件时提前终止循环,从而节省了不必要的计算和迭代。
例如,在搜索算法中,当找到目标元素时,可以使用break语句来跳出循环,因为不再需要继续搜索。
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]target = 5for num in numbers:if num == target:print("目标元素已找到")breakelse:print(num)在上述示例中,当循环遍历到数字5时,条件满足,并且通过break语句提前跳出循环,输出结果为”目标元素已找到”。
if语句的原理
if语句的原理
if语句是一种条件语句,它基于指定的条件来决定程序执行的
路径。
它的工作原理是:当给定的条件为真时,if语句中的代
码块将被执行;当条件为假时,if语句中的代码块将被忽略。
if语句通常由关键字"if"后跟一个条件表达式和一个代码块组成。
条件表达式可以是一个布尔表达式,也可以是一个返回布尔值的函数。
如果条件表达式的结果为真(即非零值或非空),则if语句中的代码块将被执行。
如果条件表达式的结果为假(即零值或空),则if语句中的代码块将被跳过。
在执行if语句时,可以使用"else"关键字来提供一个可选的代
码块,用于在条件为假时执行。
这种情况下,当条件为真时执行if代码块,当条件为假时执行else代码块。
除了"if-else"语句,还可以使用"if-elif-else"语句来处理多个条件。
在if-elif-else语句中,可以有多个elif块,它们会依次检
查条件并执行第一个满足条件的代码块。
if语句的原理是根据条件表达式的结果来选择执行路径。
它提
供了一种控制程序流程的方法,根据不同的条件执行不同的代码块。
通过合理使用if语句,可以实现程序的逻辑分支和条
件判断。
if语句
if 语句
if 语句又称为条件分支语句。
它的流程控制方式是:根据给定的条件进行判断,由判断的
结果,即真(非零)或假(零)来决定执行给出的两种操作之一。
C 语言提供了3种形式的
IF 语句:(IF 语句,if-else 语句只能用于两个分支的选择结构),(当有多个分支可供选择时,
可采用if-else-if 语句)。
1. if 语句
一般形式为:
If (表达式)语句;
执行过程:如表达式为真(非零),则执行其后的语句;否则,顺序执行if 语句后的下一条
语句。
分析下面if 语句执行过程。
If (x > y )printf (“%d ” ,x);
当x>y 时,输出X 的值,否则(即x< =y )执行该if 语句的下一条语句。
If-else-if 语句
执行过程:先判断表达式1的值,如为真,执行语句1,否则判断表达式2的值,如为真,
则执行语句2,否则继续判断表达式3,依此类推。
当出现某个表达式值为真时,则执行其
对应的语句,然后跳到整个if 语句之外继续执行程序。
如果所有的表达式均为假,则执行
语句n ,然后继续执行后续语句。
IF
↓
Y ←
→ N ↓ ↓
↓ ↓
→ → ← ←
↓
出口。
If 语 句
例题1:计算 y x 的值。 ①问题的算法流程图:
②事件过程代码设计:
Private Sub Command1_Click() Dim x As Single x = InputBox("清输入一个非负数:", "数据输入") If x >= 0 Then Print x; "的平方根="; Sqr(x) End Sub
使用单行分支结构的流程图:
②使用双分支If语句:
使用格式a:的双分支If语句:
If x<0 Then y=exp(3*x)+2*x^2 Else y=(sin(x))^2+5* x-3
使用格式b:的双分支If语句:
If x<0 Then y=exp(3*x)+2*x^2
Else y=(sin(x))^2+5* x-3
Else ……
End If
例题4:设计一个程序,接受用户输入的3个整数,然后按 从大到小顺序输出。
①算法: 算法一(采用IF语句嵌套方式)的流程图:
算法二(采用逐次判断的非IF语句嵌套方式)的流程图:
②程序代码:Private Sub CmdInput_Click()
Dim a As Integer, b As Integer, c As Integer
对象 Form
CommandButton
属性 Name BorderStyle Caption MaxButton MinButton Name Caption
属性值 FrmIf 1 If语句的使用 0 -1 CmdInput 请输入X的值
③事件过程代码设计
Private Sub CmdInput_Click()
if语句的简单经典例子
if语句的简单经典例子
if语句是编程中最基本的语句之一,它表示如果某个条件成立,就执行某个操作,否则就执行另一个操作。
下面是几个经典的if语句例子。
例子一:求两个数的最大值
这是一个if语句的经典例子。
假设我们要求两个数a和b的最大值,可以写出以下代码:
```
if a > b:
print("a is greater than b")
else:
print("b is greater than a")
```
这段代码中,首先判断a是否大于b,如果是,就输出"a is greater than b",否则就输出"b is greater than a"。
例子二:判断一个数是正数、负数还是零
例子三:判断一个年份是否是闰年
判断一个年份是否是闰年的方法是:如果这个年份能被4整除,但不能被100整除,或者能被400整除,那么就是闰年。
可以写出以下代码:
元音字母包括a、e、i、o、u五个字母,可以写出以下代码:
例子五:判断一个年龄属于哪个年龄段
假设要根据输入的年龄判断其属于哪个年龄段,可以写出以下代码:
这些例子展示了if语句的基本用法,学习if语句的时候,还需要理解逻辑运算符、条件表达式等概念。
掌握了if语句,才能写出更加复杂的程序。
c语言if的用法
C语言if的用法1. 简介在C语言中,if是一种条件语句,用于根据给定的条件来执行不同的代码块。
它允许程序根据条件的真假来选择性地执行特定的代码。
2. 基本语法if语句的基本语法如下:if (condition) {// 如果条件为真,执行这里的代码块}其中,condition是一个表达式,它用于判断是否满足某个条件。
如果condition为真,则执行花括号内的代码块;否则,跳过该代码块。
3. 单个if语句最简单的情况下,我们可以使用单个if语句来根据条件执行相应的代码。
int num = 10;if (num > 0) {printf("num是正数");}上述代码中,如果变量num大于0,则输出”num是正数”。
否则,不输出任何内容。
4. if-else语句除了使用单个if语句外,我们还可以使用if-else语句来在条件为假时执行另外一段代码。
int num = -5;if (num > 0) {printf("num是正数");} else {printf("num是负数或零");}上述代码中,如果变量num大于0,则输出”num是正数”;否则,输出”num是负数或零”。
5. if-else if-else语句在某些情况下,我们可能需要根据多个条件选择性地执行不同的代码块。
这时可以使用if-else if-else语句。
int score = 85;if (score >= 90) {printf("优秀");} else if (score >= 80) {printf("良好");} else if (score >= 60) {printf("及格");} else {printf("不及格");}上述代码中,根据变量score的值,输出相应的等级。
if语句表达式
if语句表达式
1. If 今天天气好呀,那咱就出去嗨皮呗!比如说,今天阳光灿烂得不得了,咱就可以约上小伙伴去公园逛逛,享受大自然的美好呀,难道不是吗?
2. If 我有超能力,那我可就牛啦!就像电影里的超级英雄一样,能飞檐走壁,拯救世界,这该多酷啊!
3. If 你努力学习,肯定会有大收获呀!好比播种,你辛勤耕耘,就会迎来满满的果实,这不是很明显的道理吗?
4. If 他能勇敢一点,那什么困难都能克服啦!就如同战士勇敢地冲向战场,毫不退缩,难道不是吗?
5. If 晚上有星星,那可太浪漫啦!想象一下,和心爱的人一起躺在草坪上看星星,哇,多美妙呀!
6. If 我能回到过去,我一定要好好珍惜那些时光!就好像拥有了时光机,可以弥补曾经的遗憾,多好呀!
7. If 这道菜做得好吃,那大家肯定吃得很开心呀!就跟品尝到了顶级美食一样,让人赞不绝口,不是吗?
8. If 她笑起来,那简直像花儿绽放一样美!仿佛春天里盛开的花朵,给人带来温暖和喜悦,对吧?
9. If 我有很多钱,那我就能做很多想做的事啦!比如说去世界各地旅
行,体验不同的文化,这多让人向往啊!
10. If 明天不下雨,那咱们就去爬山吧!就像是迎接一场新的挑战,去征服那座山峰,怎么样?
我的观点结论:if 语句表达式真的很有趣呀,可以让我们展开各种想象和假设,给生活带来很多可能和期待呢!。
if语句的用法例子
if语句的用法例子以下是使用if语句的一些示例:1. 基本的if语句:```num = 10if num > 0:print("数字是正数")```输出:数字是正数2. if-else语句:```num = -5if num > 0:print("数字是正数")else:print("数字是负数")```输出:数字是负数3. 嵌套if语句:```num = 0if num > 0:print("数字是正数")elif num < 0:print("数字是负数")else:print("数字是零")```输出:数字是零4. 使用逻辑运算符的if语句:```num = 7if num > 0 and num % 2 == 0: print("数字是正偶数")else:print("数字不是正偶数")```输出:数字不是正偶数5. 使用if语句检查列表中的元素:```fruits = ["苹果", "香蕉", "橙子"]if "苹果" in fruits:print("水果列表中包含苹果")```输出:水果列表中包含苹果这些示例展示了if语句在不同情况下的用法。
根据条件的满足与否,可以执行不同的操作。
c语言if判断条件为空
c语言if判断条件为空
在C语言中,if语句是一种常用的条件语句,用于根据条件是否成立来执行相
应的代码块。
在编写if语句时,我们需要在括号中指定一个条件表达式,如果该
表达式的值为真(非零),则执行if语句块中的代码,否则不执行。
然而,有时候我们可能会遇到if语句中条件表达式为空的情况。
这种情况通常
是因为代码编写错误或者逻辑错误导致的,但在C语言中,if语句中的条件表达式为空是合法的,编译器也不会报错。
当if语句中的条件表达式为空时,C语言编译器会将其视为条件永远为真,也
就是说无论条件是什么,if语句块中的代码都会被执行。
这可能会导致意想不到的
结果,因为在实际编程中,我们通常希望if语句能根据特定的条件来执行代码,
而不是无条件执行。
在实际编程中,应该避免在if语句中将条件表达式留空,因为这样做会使代码
逻辑变得不清晰,容易引起错误。
在编写代码时,应该确保if语句中的条件表达
式能够正确地判断条件,避免出现不必要的错误。
总的来说,虽然在C语言中允许if语句中的条件表达式为空,但这并不是一种良好的编程实践。
在编写代码时,应该始终保持代码的清晰和逻辑性,避免出现不必要的错误和混乱。
因此,应该尽量避免在if语句中出现条件表达式为空的情况,以确保代码的正确性和可读性。
if语句判断条件
if语句判断条件
if语句是编程中常用的一种条件语句,用于根据条件的真假来执行不同的代码块。
if语句的判断条件可以是任何可以返回布尔值的表达式,例如比较运算符、逻辑运算符、函数调用等。
比如,以下是一个简单的if语句:
```
if (x > 0) {
// 如果x大于0,则执行这里的代码块
// ...
}
```
在这个例子中,判断条件是`x > 0`,如果这个条件为真,则执行花括号中的代码块。
除了比较运算符和逻辑运算符,if语句的判断条件还可以是其他类型的表达式。
例如,以下是一个使用函数调用作为判断条件的if语句:```
if (isPrime(x)) {
// 如果x是质数,则执行这里的代码块
// ...
}
```
在这个例子中,判断条件是`isPrime(x)`,这个函数会返回一个布尔值,表示x是否是质数。
如果这个条件为真,则执行花括号中的代码块。
总之,if语句的判断条件可以是任何可以返回布尔值的表达式,只要这个表达式的结果为真,就会执行if语句中的代码块。
C语言if的用法
C语言if的用法一、什么是if语句if语句是C语言中最基本和常用的分支结构之一。
它允许根据某个条件的真假来选择性地执行不同的代码块,从而实现程序流程的控制和逻辑判断。
使用if语句可以使程序更加灵活和有逻辑性。
二、基本If语句用法基本的if语句由关键字if跟随一个条件表达式和一个代码块组成。
当条件表达式为真时,代码块内的语句会被执行;当条件表达式为假时,则会跳过代码块,继续执行后面的语句。
示例代码1:```c#include <stdio.h>int main() {int score = 90;if (score >= 60) {printf("及格了!\n");}return 0;}```上述代码中,定义了一个整型变量score并赋值为90,然后通过if语句判断score是否大于等于60。
由于条件表达式为真,所以输出结果为"及格了!"。
三、If-else语句If-else是在基本的if结构上进行扩展,允许在条件成立时执行某段代码块,并在条件不成立时执行另外一段代码块。
示例代码2:```c#include <stdio.h>int main() {int number = 18;if (number % 2 == 0) {printf("该数是偶数!\n");} else {printf("该数是奇数!\n");}return 0;}```上述代码中,定义了一个整型变量number并赋值为18。
通过if语句判断number是否能被2整除,若条件成立,则输出"该数是偶数!";否则,输出"该数是奇数!"。
四、嵌套if语句嵌套if语句指的是在一个if结构内部再次包含if结构。
通过合理安排嵌套的层次和条件表达式,可以实现更复杂的逻辑控制。
示例代码3:```c#include <stdio.h>int main() {int a = 1, b = 2, c = 3;if (a > b) {printf("a > b\n");} else if (a > c) {printf("a > c\n");} else {printf("a <= b and a <= c\n");}return 0;}```上述代码中,定义了三个整型变量a、b与c,并通过一系列嵌套的if语句判断它们之间的大小关系。
if语句的基本形式
if语句的基本形式
if语句是编程中常用的一种控制语句,用于根据条件的真假来决定执行哪些代码。
if语句的基本形式为:if (条件) {代码块},其中条件可以是一个比较表达式、一个布尔值或一个函数调用的返回值。
如果条件为真,则执行代码块中的语句,否则跳过代码块直接执行后面的语句。
在if语句的基础上,还可以使用else语句来执行条件不成立时的代码块,也可以使用else if语句来添加多个条件判断。
if语句是编程中必不可少的控制语句之一,使用得当可以使程序更加灵活、高效地运行。
- 1 -。
c语言if条件语句格式
c语言中if条件语句的三种格式介绍
在C语言中,if条件语句有三种基本格式。
这些格式可以根据特定的条件执行不同的代码块。
1.基本的if 语句:
在这里,如果condition为真(非零),则执行if后面的代码块。
2.if-else 语句:
在这个格式中,如果condition为真,则执行if后的代码块。
如果condition 为假,则执行else后的代码块。
3. if-else if-else 语句:
在这个格式中,首先检查condition1。
如果为真,则执行对应的代码块。
如果为假,则检查condition2。
如果condition2为真,则执行对应的代码块。
如果condition1和condition2都为假,则执行最后的代码块。
请注意,这些条件语句中的"condition"可以是任何返回布尔值的表达式。
例如,它可以是关系表达式(如 a > b),逻辑表达式(如 a && b),或者任何其他返回布尔值的表达式。
介绍 if语句
介绍 if语句if语句是一种在编程中常用的条件语句,可以根据条件的真假来执行不同的代码块。
在本文中,我将介绍if语句的基本语法、用法和常见应用场景。
一、基本语法if语句的基本语法如下:```if 条件:代码块```其中,条件是一个判断表达式,如果条件为真,则执行代码块中的代码;如果条件为假,则跳过代码块。
二、用法1. 单条件判断最简单的用法是使用单个if语句来判断一个条件。
例如,我们可以判断一个数是否为正数:```num = 10if num > 0:print("这是一个正数")```2. 双条件判断有时候我们需要同时判断两个条件,可以使用if-else语句。
例如,判断一个数是正数还是负数:```num = -10if num > 0:print("这是一个正数")else:print("这是一个负数")```3. 多条件判断如果需要判断多个条件,可以使用if-elif-else语句。
elif是else if 的缩写,可以用来判断多个条件。
例如,判断一个数是正数、负数还是零:```num = 0if num > 0:print("这是一个正数")elif num < 0:print("这是一个负数")else:print("这是零")```4. 嵌套条件判断在if代码块中,我们还可以嵌套使用if语句来进行更复杂的条件判断。
例如,判断一个数是否为偶数并且大于10:```num = 12if num % 2 == 0:if num > 10:print("这是一个大于10的偶数")else:print("这是一个小于等于10的偶数")else:print("这是一个奇数")```三、常见应用场景if语句在编程中非常常见,可以用来处理各种不同的条件判断。
excel表的if语句
excel表的if语句Excel表格的IF函数是一种逻辑函数,用于根据一个或多个条件的结果来返回不同的值。
下面列举了10个符合要求的IF语句示例。
1. 判断成绩等级:```=IF(A1>=90,"优秀",IF(A1>=80,"良好",IF(A1>=60,"及格","不及格")))```该公式根据A1单元格中的成绩,返回相应的等级。
如果成绩大于等于90,返回“优秀”,如果大于等于80,返回“良好”,如果大于等于60,返回“及格”,否则返回“不及格”。
2. 判断订单状态:```=IF(B1="已发货","订单已发货",IF(B1="已付款","订单已付款","订单未完成"))```该公式根据B1单元格中的订单状态,返回相应的信息。
如果订单状态为“已发货”,返回“订单已发货”,如果为“已付款”,返回“订单已付款”,否则返回“订单未完成”。
3. 判断销售额是否达标:```=IF(C1>=10000,"销售额达标","销售额未达标")```该公式根据C1单元格中的销售额,判断是否达到10000。
如果销售额大于等于10000,返回“销售额达标”,否则返回“销售额未达标”。
4. 判断员工绩效奖金:```=IF(D1>90,1000,IF(D1>80,500,IF(D1>70,200,0)))```该公式根据D1单元格中的绩效评分,返回相应的奖金金额。
如果绩效评分大于90,返回1000;如果大于80,返回500;如果大于70,返回200;否则返回0。
5. 判断产品库存状态:```=IF(E1>0,"有货","无货")```该公式根据E1单元格中的库存数量,判断是否有货。
if语句的用法excel
if语句的用法excel在Excel中,IF语句是一种逻辑函数,用于根据条件对数据进行判断和处理。
IF语句的基本语法如下:=IF(条件, 条件成立时的结果, 条件不成立时的结果)其中,条件是你想要测试的条件或表达式,如果该条件为真(即满足条件),则返回条件成立时的结果;否则,返回条件不成立时的结果。
下面是一些示例,说明如何在Excel中使用IF语句:判断单元格是否为空:=IF(A1="", "空", "非空")如果单元格A1为空,则返回"空",否则返回"非空"。
判断两个单元格的值是否相等:=IF(A1=B1, "相等", "不相等")如果单元格A1和B1的值相等,则返回"相等",否则返回"不相等"。
对数值进行比较:=IF(A1>10, "大于10", "小于等于10")如果单元格A1的值大于10,则返回"大于10",否则返回"小于等于10"。
判断日期是否在当前日期之前:=IF(A1<TODAY(), "过期", "未过期")如果单元格A1中的日期在当前日期之前,则返回"过期",否则返回"未过期"。
需要注意的是,IF语句可以嵌套使用,以便根据多个条件进行判断。
例如:=IF(A1>10, IF(B1="Yes", "满足条件", "不满足条件"), "未满足条件")这个例子中,如果单元格A1的值大于10,则进一步判断单元格B1是否为"Yes",如果是,则返回"满足条件",否则返回"不满足条件"。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)先后用3个独立的if语句处理 输入x scanf("%d",&x); 若 x<0, 则y=-1 if(x<0) y=-1; 若 x=0, 则y=0 if(x==0) y=0; 若 x>0, 则y=1 if(x>0) y=1; 输出x和y printf("x=%d,y=%d\n",x,y);
(2)用一个嵌套的if语句处理 输入x 若x>=0 若 x>0, 则y=1 否则 y=0 否则 y=-1 输出x和y scanf("%d",&x); if (x>=0) if (x>0) y=1; else y=0; else y=-1; printf("x=%d,y=%d\n",x,y);
if语句只有两个分支可供选择,在实际问题中常常 需要用到多分支的选择。 举例:成绩等级分类,人口年龄分类,工资统计分 类,银行存款分类等等。 以上情况如果用if语句处理,分支较多,程序冗长, 可读性差。 switch语句可以方便地处理多分支选择。
switch语句的一般形式: switch(表达式) 整型及字符型数据 { case 常量1 :语句1 case 常量2 :语句2 ┇ ┇ ┇ case 常量n :语句n default : 语句n+1 }
3’、if (number > 500) cost = 0.15; else if (number > 300) cost = 0.10; else if (number > 100) cost = 0.075; else if (number > 50) cost = 0.05; else cost = 0;
1、if(a==b && x==y) printf(‚a=b,x=y‛); 2、if(x >0) printf (‚ %f‛,x); else printf (‚ %f‛ ,-x); 3、if(number > 500) cost=0.15; else if(number>300) cost=0.10; else if(number>100) cost=0.075; else if(number>50) cost=0.05; else cost=0;
switch语句的作用:根据表达式的值,使流程跳转到不同 的语句。
switch(grade) { case 'A': printf("85~100\n");
case 'B': printf("70~84\n");
case 'C': printf("60~69\n"); case 'D': printf("<60\n");
说明:1、当表达式的值与某一个case后面的常量表达式的值相等时, 执行case后面的语句。 2、每个case的常量表达式的值必须互不相同,否则会出现互相矛 盾的现象。 3、各个case和default的出现次序不影响执行结果。可以先出现 default,再出现case ‘A’,case ‘D’等,但建议default 放在最后边。 4、执行完一个case语句后,流程控制转移到下一个case继续执行。
说明:为使程序结构清晰,便于他人阅读,也便于 维护,程序应做到: 1、采用锯齿形式,内嵌语句向右缩进2列或多列。 2、同一层次的成分(如同一层的if和else)出现在 同一列上。
程序改进: void main() { int number; double discount,price,total;
if (表达式) 语句1
[ else 语句2 ]
方括号内的部分为可选的
if (表达式) 语句1 [ else 语句2 ]
语句可以为简单的语句、复合语句、另 一个if语句等
最常用的3种if语句形式: 1. if (表达式) 语句1 (没有else子句) 2. if (表达式) 语句1 else 语句2 (有else子句) 3. if(表达式1) 语句1 else if(表达式2) 语句2 else if(表达式3) 语句3 ┆ else if(表达式n) 语句n else 语句n+1 (在else部分又嵌套了多层的if语句)
if语句的嵌套
if语句的嵌套:在if语句中又包含一个或多个if语句称为一 般形式: if( ) if( ) 语句1 else 语句2 内嵌if语句 else if( ) 语句3 else 语句4
if() { if() 语句1 } else语句2
内嵌if语句 { }限定了内嵌if范围
注意:else总是与它上面最近的未配对的if配对。 思考下面程序的配对结果。 1、if() 2、if() else 语句1 if() 语句1 if()语句2 else else 语句3 if()语句2 else 语句3 else 语句4
作业
1、使用if else和switch语句实现给出一个百分制成绩,要求输 出成绩等级‘A’‘B’‘C’‘D’‘E’,其中90分以上为 ‘A’,80-89分为‘B’,70-79分为‘C’, 60-69分为‘D’,60分 以下为‘E’。 2、P106要求编写程序,实现用户输入购买的数量和单价输出 应付货款。
if(number>=500) discount=0.10; else if(number>=300) discount=0.075; else if(number>=50) discount=0.05; else discount=0; total=number*price*(1-discount); printf("Total=%10.2f\n",total); }
给出三角形的边长,求三角形的面积。 int main() {... scanf(‚%lf,%lf,%lf‛,&a,&b,&c); if(a+b>c && b+c>a && c+a>b) { s=0.5*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(‚area=%6.2f\n‛,area); } else printf(‚it’s not a trilateral.\n‛); …}
void main() { int number; double discount,price,total;
//discount为折扣, //price为单价,total为总价
printf("please enter number and price:"); scanf("%d,%lf",&number,&price);
输入x 若x<0, 则y=-1 否则 若x=0, 则y=0 否则 y=1 输出x和y
scanf("%d",&x); if(x<0) else if(x==0) y=0; y=-1;
else
y=1;
printf("x=%d,y=%d\n",x,y);
思考: P120,判断程序正确与错误。
switch语句
例1:为促销,对购买货物多的顾客有优惠,大于等 于50件的优惠5%,大于等于100件的优惠7.5%,大于 等于300件的优惠10%,大于等于500件的优惠15%, 编写程序,要求用户输入购买的数量和单价,计算 应付货款。 解题思路:检查数量的范围,根据数量范围,确定 优惠折扣。 计算公式:应付货款=件数*单价*(1-优惠折扣)。
//discount为折扣,
//price为单价,total为总价
printf("please enter number and price:"); scanf("%d,%lf",&number,&price);
if(number>=500) discount=0.10; else if(number>=300) discount=0.075; else if(number>=50) discount=0.05; else discount=0; 采用锯齿形式 total=number*price*(1-discount); printf("Total=%10.2f\n",total); }
说明: (1)整个if语句可写在多行上,也可写在一行上,但都是一 个整体,属于同一个语句。 (2)‚语句1‛…‚语句n‛是if中的内嵌语句,内嵌语句也 可以是一个if语句。 (3)‚语句1‛…‚语句n‛可以是简单的语句,也可以是复 合语句,需要用{ }将几个语句括起来。 (4)else子句不能单独使用,它必须是if语句的一部分,与 if配对使用。
上课要求
课前预习 将手机调到静音 认真做笔记 及时完成作业
学习目标
了解if语句的一般形式 学会使用嵌套的if语句 学会使用switch语句
学习内容
if语句的一般形式 if语句的嵌套 switch语句
if语句的一般形式
if语句分为两种类型: 不带else子句的和带else子句的。 一般形式为:
5、case 常量表达式只起语句标号的作用,并不是在该处Байду номын сангаас行条件判
断。
6、当case后面包含一个以上的执行语句时,可以不必用{}括起来, 程序自动执行case后面的所有语句。 case 70:printf(‚your age is 70‛); printf(‚you can enter the park freely‛); 7、多个case可以共用一组执行语句。 case ‘A’: case ‘B’: case ‘C’:printf(‚>60\n‛);break; 当grade的值为‘A’、‘B’或‘C’时,都执行printf(‚>60\n‛); break;