06选择结构程序的设计(if~else语句)
C语言程序设计-if_else选择结构PPT
使用if-else语句实现选择结构程序
目录
CONTENTS
01 情景导入 02 情景分析 03 if-else选择语句 04 例题讲解 05 课堂练习
情景导入
明天是周末,天气预报说明天有可能下雨, 小明计划如果明天不下雨就出去春游,否则 的话就去图书馆看书。 请根据以上情景设计一个C语言程序,模拟 小明明天的活动情况。
情景实现
int main() {
int i; printf(“明天下雨请输入1,不下雨请输入0\n”); scanf(“%d”,&i); if(i==0)
printf(“明天不下雨去春游\n”); else
printf(“明天下雨去图书馆\n”); return 0; }
例题讲解
从键盘上输入两个实数,比较并输出这两个数中 较大的一个。
情景分析
根据案例描述,小明明天的活动有两个选择,去春游 或者去图书馆。小明具体选择什么活动要看明天是否 下雨。 在C语言中,可以通过if-else语句来实现类似的选择程序。
if-else选择语句
if-else语句的语法结构
if(条件) 选择语句1:; else 选择语句2;
开始if结构
成立
判断条件 成立
printf(“两个数中较大的为%d\n”,b); return 0; }
课堂练习
选择结构程序设计,循环结构程序设计习题
选择结构程序设计
一、单选题
1.有如下嵌套的if语句
if(a<b)
if(a<c) k=a;
else k=c;
if(b<c) k=b;
else k=c;
以下选项中与上述if语句等价的语句是
A)k=(a<b)?a:b;k=(b<c)?b:c;
B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);
{ case 1:switch(b<0)
{ case 1:printf( " @ " );break;
case 2:printf( " ! " );break;
}
case 0: switch(c==5)
{ case 0: printf(" * "); break;
case 1: printf(" # "); break;
{case0:a=b;break;
case1:a++;
}
C)switch(a)
{default:a++;break;
case1:a=b;
}
D)switch(a==1)
{case1:a=b;break;
case0:a++;
}
3.设变量x和y均已正确定义并赋值。下列if语句中,在编译时将产生错误信息的是
if elseif else语句的用法
if elseif else语句的用法
一、if else if else语句的概念
if else if else语句是一种选择性的分支结构,这种结构反映了程序在不同条件下的不同执行顺序,根据流程控制中指令执行的顺序又称为“单分支条件结构”或者”多分支条件结构”。
if else if else控制语句允许在单一程序中嵌入多个判断语句,可以根据不同的条件判断,执行不同指令,这样就使得程序更灵活,更具响应性。
二、if else if else语句的用法
1、基本语法结构
在C/C++等常用编程语言中,if else if else语句的基本语法结构如下:
if (条件表达式1)
{
//控制语句
}
else if (条件表达式2)
{
//控制语句
}
……
else
{
//控制语句
}
if else if else语句中可以包含任意数量的else if子句,通过比较条件表达式的值,从上至下依次判断,只要有一个条件表达式的值为真,则直接执行和该条件表达式对应的控制语句,然后结束整个if else if else结构,程序不会继续执行。只有当所有条件表达式的值都为假时,才会执行else子句中的控制语句。
2、多分支选择应用
if else if else语句通常用作多分支选择结构,它结合了判断、比较和选择的功能,可以强化程序的逻辑性。以下是一些典型的应用:
(1)判断学生成绩:根据学生成绩,用if else if else语句判断学生的分数范围,例如:
if(score>=90&&score<=100)
{
printf(“优秀”);
C语言_实验二、选择结构程序设计
实验二 选择结构程序设计
一、实验目的
1. 掌握关系表达式和逻辑表达式的使用。
2. 熟悉选择结构程序设计。
3. 熟练使用if 语句进行程序设计。
4. 使用switch 语句实现多分支选择结构。
二、实验内容
(1 计算a+|b| 2 判断一个整数是否可以被3和5整除)
1.[目的]掌握判断一个字符型数据是否数字字符的方法,以及数字字符转换为相应整数的方法。
[题目内容]从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。
[输入]一个字符型数据
[输出]整数或出错信息
[提示] 根据字符型数据的ASCII 码值是否在‘0’字符与‘9’字符之间进行判断。使用if …else …语句和复合语句。
2.[目的]掌握条件表达式的使用
[题目内容] 编写一个程序,其功能为:从键盘输入三个数x 、y 、z ,判断x+y=z 是否成立,若成立输出‚x+y=z ‛的信息,否则输出‚x+y!=z ‛的信息。
[输入] 三个数x 、y 、z
[输出] ‚x+y=z ‛或‚x+y!=z ‛
[提示] 条件判断表达式x+y==z
3.[目的]掌握求最大值最小值的方法。
[题目内容] 编写一个程序,其功能为:输入三个整数,输出最大数和最小数。
[输入] 三个整数
[输出] 最大值和最小值
[提示] 设置最大值变量max 和最小值变量min ;首先比较a,b 的大小,并把大数存入max , 小数存入min ;然后最大值变量max 和最小值变量min 再与c 比较,若c 大于max ,则max 取值c ,否则保持不变;如果c 小于min ,则min 取值c ,否则保持不变。最后输出max 和min 的值。使用if …else …语句、if 语句以及复合语句。
C语言-选择结构程序设计
注:在进行逻辑表达式 的求解中,并不是所有 的逻辑运算都被执行, 只是在必须执行下一个 逻辑运算符才能求出表 达式的值时,才执行该 运算符。
a
非0 非0
0
0
b c
0
非0
例:a&&b&&c
1
0
例:a=1 b=2 c=3 d=4 m=1 n=1
(m=a>b) && (n=c>d)
为二者中较高的类型。
如: x ? 'a ': 'b ' x为整型变量
x>y ? 1:1.5 结果为实型
例:输入一个字符,判断它是否为大写字 母,如果是,将它转换成小写字母,如果 不是,不转换。然后输出最后得到的字符。
程序如下:
main( ) { char ch; scanf("%c",&ch); ch=(ch>= 'A '&& ch<= 'Z ')?(ch+32):ch; printf("%c",ch); }
该逻辑表达式的值为:
0
该逻辑表达式执行结束后m的值为: 0
该逻辑表达式执行结束后n的值为: 1
5.3
if 语句
第6讲 选择结构程序设计--三角形判断
多分支选择结构 语句执行流程: 假(0)
表达式1 真(非0) 语句1 表达式2 真(非0) 语句2 假(0) 假(0)
表达式n
真(非0) 语句n
语句n+1
11:34
下一语句
20
语句形式: if (表达式1) 语句1; else if (表达式2)语句2; …… else if (表达式n)语句n; else 语句n+1;
y=x
y=x*x
22
注意事项
(1)if和else同属一个语句,else不能单 独使用,只能是if语句的一部分 (2)if语句中条件的写法应尽量简单。 (3)if语句的条件表示:通常为关系表达 式、逻辑表达式,也可以是任意的数值类 型,如 if(3) printf(“ok”); if(„a‟) printf(“%d”,‟a‟);
else printf("It is not a number");
}
怎么判断一个字 符是否是‘0’~ ‘9’之间的字符 呢?
?
假
真
c是数字
结束
c不是数字
11:34
14
编程练习
输入考生的分数,判断是否大于等于 60分,如果是输出”pass”,否则输 出”fail”
11:34
15
start
Input mark
选择结构程序设计(if~else语句)
h
12
if-else语句应用举例
判断一个给定的数为奇数还是偶数
scanf(“%d”,&n); if(n%2==0)
printf(“%d是偶数”,n); else
printf(“%d是奇数”,n);
h
假 输出n是奇数
输入n n%2==0
真 输出n是偶数
上机演示程序6-2执
13
行流程
课堂练习
求学生的成绩总评 scanf(“%f”,&s); if(s>=60) printf(“pass”); else printf(“fail”);
如果表达式值非零,则执行if子句,然后跳过else子句,去执行if语句后 的下一条语句;
如果表达式的值为零,则跳过if子句,去执行else子句,接着去执行if语 句后的下一条语句。
h
17
h
18
if35语句关于关于ifelseifelse语句的几点说明语句的几点说明else不是一条独立的语句它只是if语句的一部分在程序中else必须和if配对共同组成一条ifelse语2
《C语言程序设计》
第4章
选择结构程序设计
if~else语句
下班买10个包子,如果看到卖西瓜的, 就买一个。
if(遇到卖西瓜) 买一个包子;
statement
h
9
if语句应用举例
06《程序设计基础》-循环程序设计 - 控制
23
三、do-while循环结构
例:计算sum=1+2+3+ … +100
i=1,sum=0 sum=sum+i i=i+1 直到i>100 #include <stdio.h> int main( ) 循环变量的初始化 { int i=1, sum=0 ; do { sum = sum + i ; 循环体 i++ ; } 循环控制条件 while ( i <= 100 ); printf ( “sum = %d \n”, sum ) ; return 0;}
级评定,90到100分为优秀,60到89分为合格 ,0到59分为不合格
#include <stdio.h> void main() {int score; scanf("%d",&score); if (score>=90) printf(“优秀\n"); else if(score>60) printf(“合格\n"); else printf(“不合格\n"); }
②表达式2省略时,不判断循环条件,将成为“死循环”, 需要在循环体中引入break语句以跳出循环。
③表达式3省略时,循环体内应有使循环条件改变的语句 。
如:for (i=1;i<=100;) { s=s+i; i++ ; }
选择结构程序设计
使用IF语句实现的程序段如下: If x>=90 then Print "优秀" ElseIf x>=80 Then Print "良好" ElseIf x>=70 Then Print "中等" ElseIf x>=60 Then Print "及格" Else Print "不及格" End If
实验4 选择结构
本章内容:
1、 If…Then语句(单分支结构) 2、If…Then…Else语句(双分支结构) 3、 If…Then…ElseIf语句(多分支结构) 4、 Select Case语句(情况语句) 5、 选择结构的嵌套
选择结构及条件表达式
1、在日常生活中,常常需要对给定的条件进 行分析、比较、判断,并根据判断结果采取不 同的操作,选择结构是计算机科学用来描述自 然界和社会生活中分支现象的重要手段,其特 点是:根据给定的条件成立与否,决定从各实 际可能的不同分支中执行某一分支的相应操作。 2、在条件语句中,作为判断依据的表达式称 为“条件表达式”,它的值要么是真(True), 要么为假(False)。
将例4.3 使用select case…..语句来实现的程序段如下: Select Case x Case 90 to 100 Print "优秀" Case 80 to 89 Print "良好" Case 70 to 79 Print "中等" Case 60 to 69 Print "及格" Case Else Print "不及格" End Select
if选择结构程序设计PPT教案
第5页/共43页
例1:输入两个正整数,输出其中较大的数。
#include<stdio.h> main() { int a,b,max; scanf(“%d,%d”,&a,&b); max=a; if(max<b) max=b; printf(“max=%d”,max); }
假
max<b
真
max=b
#include<stdio.h> main() { char c;
c=getchar(); if(c>=‘a’ && c<=‘z’ || c>=‘A’ && c<=‘Z’)
printf(“\nyes”); else
printf(“\n no”);
}
第12页/共43页
两种if结构的比较
#include<stdio.h> main() { char c;
}
s>=90 真
假
真 s>=80 假
s>=70 假 真
真 s>=60 假
优秀 良好 中等 及格 不及格
条件进一步简化 s>=80 && s<=89 简化为 s>=80
第34页/共43页
课堂练习
从键盘输入一个学生等级成绩,成绩A输出“>=90”;成绩B输出“80~89”;成绩C输出 “70~79”;成绩D输出“60~69”;否则输出“<60”。
选择结构程序设计简版
选择结构程序设计
选择结构程序设计
在程序设计中,选择结构是一种非常重要的控制结构。通过选
择结构,我们可以根据程序的运行情况来决定执行不同的代码块。
选择结构能够实现条件判断和分支选择,为程序的灵活性和可扩展
性提供了极大的便利。本文将介绍选择结构的概念、语法和几种常
用的选择结构程序设计方法。
选择结构的概念
选择结构是指程序根据不同的条件执行不同的代码块。在选择
结构中,通常会使用条件判断来确定程序执行的路径。根据条件表
达式的返回值(真或假),程序会决定执行真值分支(True branch)或者假值分支(False branch)。选择结构的出现可以使程序更具
有灵活性和可扩展性。
选择结构的语法
在大多数编程语言中,选择结构通常有两种形式:`if`语句和
`switch`语句。
if语句
`if`语句是最基本的选择结构语句。它可以根据某个条件的真
假来执行不同的代码块。`if`语句的语法如下:
markdown
if (condition) {
// 如果条件为真,执行这里的代码块
} else {
// 如果条件为假,执行这里的代码块
}
其中`condition`是一个条件表达式,它能够返回一个布尔值(真或假)。如果`condition`为真,程序会执行`if`后面的代码块;如果`condition`为假,程序会执行`else`后面的代码块。
switch语句
`switch`语句是另一种常用的选择结构语句。它可以根据一个
表达式的值,选择性地执行多个代码块中的一个。`switch`语句的
语法如下:
markdown
switch (expression) {
VB第6章 选择结构
If intnum1 > intnum2 Then strname = "张三" "张三 张三" Else strname = "李四" "李四 李四" End If
6.4* 条件函数
6.3 Select Case 多分支选择结构
四、例题 Text1 【例VB6-5】输入任一字符串,判断其首字 VB6- 输入任一字符串, 母是数字、字母还是其它字符 母是数字、 •字符串首字母:Left(Text1.Text,1) 字符串首字母: 字符串首字母 •数字:Case "0" To "9" 数字: " " 数字 •字母:Case "a" To "z", "A" To "Z" 字母: " " " 字母 •其它字符:Case Else 其它字符: 其它字符
6.2.3 块 IF 结构嵌套的改进形式
If 条件1 Then 条件 语句组1 语句组 Else If 条件 Then 条件2 语句组2 语句组 Else If 条件 Then 条件3 语句组3 语句组 Else … End If End If End If
第四章 选择(分支)结构程序设计
4.2 逻辑运算符和逻辑表达式
4.2.2 逻辑表达式 作业:写出C语言的表达式
1.|x|>2 2.x≤1+a 并y≤b
3.
的定义域
fabs(x)>2 或 x>2||x<-2 x<=1+a&&y<=b (x>=2||x<=1)&&x!=0 或(x-1)*(x-2)>=0&&x!=0
4.3 if语句
❖ A 和B 可以使单一语句,也可以是复合语句。 ❖ else 部分不能独立存在,前面一定有;和if 语句。
4.3 if语句
4.3.1 if语句三种形式 注意: ▪ 在if和else后面可以是单条语句,也可以是复合语 句,如果使用了复合语句,一定要用花括号括起来, 语句块后面不要“;”号。
Hale Waihona Puke Baidu
4.3 if语句
4.3.1 if语句三种形式
▪ 在C语言中,表达式P的值是非0时,系统均按真 值处理。
例(1) if (‘a’) printf(“ok!”); (2) x=-5; if(x) printf(“ok!”); (3) y=0; if(y==0) printf(“ok!”); if(y) printf(“ok!”);
逻辑运算的真值表:
a b a&&b
VB编程6.0_选择结构
否则
<语句组B > 判断结束
T 语句组A
条件表达式
F 语句组B
Endif之后的语句
学 中 茂 3】从键盘上输入两个整数 怀 【例 a和b,并按从小到大输出。 院 一
名 远
Private Sub Command1_Click()
a = Val(InputBox("请输入一个正整数a")) b = Val(InputBox("请输入一个正整数b"))
ElseIf子句 Else子句 End If语句
[<语句组N>]]
[Else [<其他语句组>]]
End If
注意: 格式书写、嵌套
学 中 茂 怀 【例 5 院 】输入华氏温度F,转换成摄氏温度C并显示 一
名 远
转换公式:C=5/9*(F-32) 提示信息:
C>40 时,打印“高温 " 30<C≤40 时,打印“ 热 " 20<C≤30 时,打印“ 舒适 " 10<C≤20 时,打印“凉爽 " 0<C≤10 时,打印"冷 " C≤0 时,打印“ 冰冻"
Case 0
Y = 1.25 Case Is > 0
Case X =0
Y= VB 程 序 设 计 选 择 结 构 —— 1.25 lgx x=0 x>0 X = Val(Text1.Text) Select Case X Case X < 0 Y = Exp(X) + Exp(-X)
第3章 选择结构(C++版)
【上机练习】
•2.输出绝对值【1.4编程基础之逻辑表达式与条件分支02】 • 输入一个浮点数,输出这个浮点数的绝对值,保留到小数点后两位。 •输入: • 输入一个浮点数,其绝对值不超过10000。 •输出: • 输出这个浮点数的绝对值,保留到小数点后两位。 •样例输入: • -3.14 •样例输出: • 3.14
二、if-else语句(双分支结构) if单分支选择结构只在条件为true时采取操作,条件为 false时则忽略这个操作。利用if-else双分支选择结构则可 以在条件为true时和条件为false时采取不同操作。 格式1: 功能:如果(条件表达式)的值为“真” ,即条件 成立,则执行语句1,执行完“语句1”后继续执行整个if- else语句的后继语句;如果(条件表达式)的值为“假” , 即条件不成立,那么跳过语句1选择执行“语句2” ,执行 完语句2后继续执行整个if-else语句的后继语句;也就是 说if-else语句总是根据(条件表达式)的结果,选择 “语句1”和“语句2”中的一个执行,执行完以后,整个if -else就算执行完了。执行流程如图4-2所示
【上机练习】
•5.整数大小比较【1.4编程基础之逻辑表达式与条件分支05】 • 输入两个整数,比较它们的大小。若x>y,输出>;若x=y,输出=;若x<y,输 出 <。 •输入: • 一行,包含两个整数x和y,中间用单个空格隔开。0<=x<2^32, -2^31<=y<2^31。 •输出: • 一个字符。若x > y,输出 > ;若x = y,输出 = ;若x < y,输出 < ; •样例输入: • 1000 100 •样例输出: • >
C语言程序设计—选择结构
时才需要判别c的值。
和b都为假才判别c。
a
0(假)
逻辑
表达式
非0(真)
b
0(假)
a
0(假)
b
非0(真)
c
非0(真)
0(假)
0(假)
c
非0(真)
1(真)
非0(真)
非0(真)
0(假)
0(假)
0(假)
1(真)
既然关系表达式和逻辑表达式的值是0和1,而且在判断一个量是否为“真”时,以0代表
“假”,以非0代表“真”。那么就可以理解为什么在if语句中表达式可以是任何数值表达
//b*b-4ac≥0
{
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;x2=p-q;
//求出方程的两个根
printf("real roots:\nx1=%7.2f\nx2=%7.2f\n",x1,x2);
//输出方程的两个根
}
return 0;
}
输入a,b,c
计算disc=b2-4ac
假
(0)
真
(1)
真
(1)
假
(0)
假
(0)
假
(0)
在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
下班买10个包子,如果看 到卖西瓜的,就买一个。
if(遇到卖西瓜) 买一个包子;
else 买十个包子;
学习目标
➢ 用if~else语句实现选择 ➢ 理解if~else语句的执行流程 ➢ 熟练使用关系运算与逻辑运算构造条件表达式
例:求二元一次方程的实根。 输入a,b,c
输入a,b,c 计算△
真 a>0&&△>=0
假
计算x1,x2
输出x1,x2
上机演示程序 6-1执行流程
课堂练习
给出三角形的三边长,求三角形面积
if(a+b>c&&a+c>b && b+c>a) { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“%f”,area); }
输入a,b,c
a+b>c&&
假
b+c>a&&
a+c>b
真
计算s
计算area
输出area
if-else语句(条件选择语句)
if~else语句的一般格式
if (expression)
真
statement1
else
statement1
statement2
假 expression
statement2
if-else语句应用举例
简单语句,复合语句, if语句等
假
expression
真
statement
if语句应用举例
d求isc二=b元*b一-4*次a*方c; 程的实根。
if(a>0&&disc>=0) { p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q; x2=p-q; printf(“%d,%d”,x1,x2); }
真 y=-x
输入x
x>=-5&&x<0
真 y=x
假
假
x>0&&x<=5
真
假
x==0
y=0
输出y
C语言有两种选择语句:
(1)if语句,实现两个分支的选择结构 (2)switch语句,实现多分支的选择结构
if语句(条件选择语句)
关系表达式,逻辑表
if语句的一般格式
达式,数值等
if (expression) statement1;
if(3+5) 语句;
if(!a) 语句;
if(a==0) 语句;
关于if~else语句的几点说明
2.无论是否有else子句,if子句中如果只有一条语句, 则此语句后的分号不能省略。
else不是一条独立的语句,它只是if语句的一部分, 在程序中else必须和if配对,共同组成一条if~else语 句。
printf(“pass”); else
printf(“fail”);
输入成绩s
真
假
s>=60
输出pass
百度文库
输出fail
关于if~else语句的几点说明
1.if后面圆括号中的表达式,可以是任意合法的C 语言表达式,也可以是任意类型的数据。
if(a>b) if(a>b&& b>c)
语句;
语句;
if(a=0) 语句;
判断一个给定的数为奇数还是偶数
scanf(“%d”,&n); if(n%2==0)
printf(“%d是偶数”,n);
输入n 假
n%2==0 输出n是奇数
else printf(“%d是奇数”,n);
真 输出n是偶数
上机演示程序 6-2执行流程
课堂练习
求学生的成绩总评
scanf(“%f”,&s); if(s>=60)
关于if~else语句的几点说明
3.if~else语句的执行流程 首先计算紧跟在if后面一对圆括号内表达式的值。
如果表达式值非零,则执行if子句,然后跳过else子 句,去执行if语句后的下一条语句;
如果表达式的值为零,则跳过if子句,去执行else子 句,接着去执行if语句后的下一条语句。
谢谢观看! 2020
ax2 bx c 0
计算△
条件: a>0, △>=0
真 a>0&&△>=0
假
计算x1,x2
输出x1,x2
例:判断一个给定的数为奇数还是偶数
条件:
除以2余数是否为0
假
输出n是奇数
输入n n%2==0
真
输出n是偶数
例:求分段函数y的值 -x x∈[-5,0) 条件
y0
x=0
条件
x x∈(0,5] 条件