选择结构
用于判断给定的条件,根据条件的结果来选择执行不同的语句段。
实现选择结构的语句
三元运算符
if
switch
三元(目)运算符
条件?语句:语句
规则:如果条件为真,则执行?后面的语句。
如果条件为假,则执行:后面的语句。
练习
求一个三位数的和
只要一个三位的正整数,这个数我不知道?向用户要
prompt(’提示语句‘,’默认值‘)输入框
求和:
设:123
123/100 1.23 parseInt()1
123%100 23/10 2.3 parseInt()2
123%10 3
//1. 准备一个变量,接收一个三位的正整数
var i = prompt('请输入一个三位的正整数:');
//2. 分解三位数
var h = parseInt( i / 100 );
var t = parseInt( i % 100 / 10);
var a = i % 10;
//3. 求和
var sum = h + t + a;
//4. 输出结果
alert(i + '这个整数的和是:' + sum);
判断一个年份是闰年还是平年
判断一个数是偶数还是奇数
判断一个数是正数还是负数
if 分支语句
单分支选择语句
if(条件){
语句组;
}
流程:当程序执行到if时,先计算表达式的值,如果值为true,则执行后面大括号中的语句;如果值为false时,执行if语句后面的其它语句
练习
根据成绩判断是否发放清华大学的通知书?
输入任意两个数,然后交换位置输出(如:a=4,b=5输出a=5,b=4)
输入任意三个数,由大到小输出
双分支选择语句
if(条件){
语句组;
}else{
语句组;
}
流程:当程序执行到if时,先计算表达式的值,值为true时:执行if后面语句组;值为false时,执行else后的语句组。
练习
求两个数中的最大值?
求三个数的最大值?
输入一个成绩,判断是升班还是重修
多分支选择语句
if(条件1){
语句组1;
}else if(条件2){
语句组2;
}
……
}else if(条件n){
语句组n;
}else{
语句组n + 1;
}
流程:当程序执行到if时,先判断条件1的值,值为true时,执行语句组1;值为false时,再判断条件2的值,值为true时,执行语句组2;值为false时,再判断条件3的值,依此类推,直到判断条件n的值,值为true时,执行语句组n,值为false时,执行语句组n+1;
练习
任意输入一个数字,判断是星期几?
判断成绩优(90-100)良(80-89)中(70-79)差(60-69)不及格(<60)
设计一个具有+、-、*、/、%的简单计算器
switch 分支语句
switch(表达式){
case 表达式 : 语句组; [break;]
case 表达式 : 语句组; [break;]
……
case 表达式 : 语句组; [break;]
[default : 语句组;]
}
规则:先计算switch后的表达式的值,如果这个值与 某个case后表达式的值 相同时,则执行这个case后面的语句组,如果语句组后有break,则直接跳出switch语句。如果没有break,则继续执行后面所有的语句组,直到遇到break或右大括号停止。
练习
任意输入一个数字,判断是星期几?
输入一个0-6的整数,判断哪一天是工作日,哪一天是休息日?
输入一个月份,输出这个月有多少天?
判断成绩优良中差不及格
计算某日是该年的第几天?
用switch实现简单计算器
根据血型与性别测试性格
设计一个简单的猜拳游戏