<!-- if -->
<script>
console.log('程序开始执行')
var age = 19
if (age >= 18) {
var message = "成年人"
console.log(message)
}
</script>
一、程序:是由一条条语句构成
程序=程序语句+数据结构+算法
程序语句:
var num//变量声明语句
num=100 //赋值语句
connsole.log(num)//控制台语句
alert("helloword")//弹框语句(函数调用语句)
程序执行从上往下依次执行
1. 逻辑分支语句:
1. if语句
语法
if(条件表达式){ 可以有多条语句
<!-- if -->
<script>
console.log('程序开始执行')
var age = 19
if (age >= 18) {
var message = "成年人"
console.log(message)
}
</script>
var num//变量声明语句
num=100 //赋值语句
connsole.log(num)//控制台语句
alert("helloword")//弹框语句(函数调用语句)
} // 判断()中的条件是否成立
2. if-else语句:
if(条件表达式){
语句块1
}else{
语句块2
}
<!-- if-else -->
<script>
var age = 19
if (age >= 18) {
console.log("成年人")
} else {
console.log("未成年人")
}
</script>
3. if-else if-else语句:
if(条件表达式1){
语句块1
}else if(条件表达式2) {
语句块2
}
<!-- if-else if- else-->
<script>
var num=10
if(num>10){
console.log("num值大于10")
}else if(num<10){
console.log("num的值小于10")
}else{
console.log("num的值等于10")
}
4. if语句的嵌套
if(条件表达式){
语句块
if(条件){
}
}
<!-- if语句块的嵌套 -->
<script>
var score = 98
if (score > 90) {
if (score < 100) {
console.log('成绩是A级')
} else {
console.log('成绩 不能大于100');
}
}
if (score >= 90 && score <= 100) {
console.log('成绩是A级')
} else if (score >= 80 && score < 90) {
console.log('成绩是B级')
} else {
}
</script>
eg:求两个数54和67最大值, 要求保存到变量max中,并在控制输出显示
构思:1. 假设第一个数是最大值
2.依次让后面的数与最大值比较,如果后面的数比最大值max大,将值赋给max
3.依次比较完之后,max中保存所有数的最大值
<script>
var m = 154
var n = 67
var max //保存最大值
if (m > n) {
max = m
} else {
max = n
}
console.log('最大值是 :', max)
</script>
eg:54,67,89 三个最大值
<script>
// 54,67,89三个最大值
var a=54
var b=67
var c=89
var max=a //假设第一数是最大值
if( b<max ){
max=b
}
if(c<max){
max=c
}
console.log("最大值是:",max)
</script>
练习
1.判断一个整数,属于哪个范围:大于0;小于0;等于0
<script>
var m=-5
if(m>0){
console.log(m,"大于0")
}else if(m<0){
console.log(m,"小于0")
}else{
console.log(m,"等于0")
}
</script>
2.判断一个整数是偶数还是奇数,并输出判断结果
<script>
var m = 95
if (m % 2 == 0) {
console.log(m, "是偶数")
} else {
console.log(m, "是奇数")
}
</script>
3.开发一款软件,根据公式(身高-108)*2=体重,可以有10斤左右的浮动。
<script>
var height = 150
var weight = 84//原来的体重
var m = (height - 108) * 2//m为标准体重
if ((m + 10) < weight) {
console.log(m, "您已超重")
} else if (weight < (m - 10)) {
console.log(m, "您的体重较轻")
} else {
console.log(m, "您的体重正常")
}
</script>
4.来观察测试者 输入年份,计算某一年是否是闰年 (闰年能被4整除并且不能被100整除,或者能被400整除)
<script>
var year = 1998
if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) {
console.log(year, "是闰年")
} else {
console.log(year, "不是闰年")
}
</script>
5.输入分数,判定成绩等级 (成绩对应等级 90-100:A级 80-89:B级 70-79:C级 60-69:D级 其它:不合格)
<script>
var score = 100
var grade
if (90 <= score && score <= 100) {
grade= "A级"
}else if (80 <= score && score <= 89) {
grade="B级"
}else if (70 <= score && score <= 79) {
grade= "C级"
}else if (60 <= score && score <= 69) {
grade="D级"
}else{
grade= "不及格"
}
console.log(score+"分 等级是"+grade)
</script>
6.求四个数56,48,19,72的最小值
<!-- 求56 48 19 72的最小值 -->
<script>
var a = 56
var b = 48
var c = 19
var d = 72
var min = a
if (min < b) {
min = b
}
if (min < c) {
min = c
}
if (min < d) {
min = c
}
console.log("最小值为", min)
</script>
2.多分支语句
switch多分支语句
语法:
switch(表达式的值){
case 值1:
语句块1
[break]
case 值2:
语句块2
[break]
case 值3:
语句块3
[break]
default:
语句块
}
eg:输入一个数字判断星期几
<script>
// 输入一个数字判断星期几
var week = 6
switch (week % 7) {
case 1:
console.log("星期一")
break
case 2:
console.log("星期二")
break
case 3:
console.log("星期三")
break
case 4:
console.log("星期四")
break
case 5:
console.log("星期五")
break
case 6:
console.log("星期六")
break
default:
console.log("星期日")
break
}
</script>
switch多分支语句的穿透
语法:
switch(表达式的值){
case 值1:
语句块1
case 值2:
语句块2
case 值3:
语句块3
default:
语句块
}
eg: 输入年份和月份,显示该年当月的天数, 利用case穿透简化代码
注: 1 3 5 7 8 10 12 31天
4 6 9 11 30天
2月:平年28天 闰年29天
<script>
var year = 2022
var moth = 2
var day
switch (moth) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day = 31
break
case 4:
case 6:
case 9:
case 11:
day = 30
break
default:
if (((year % 4 == 0) && (year % 100 != 0)) ||(year % 400 == 0) ) {
day = 29
} else {
day = 28
}
}
console.log(year + "年" + moth + "月有" + day + "天")
</script>
输入分数,判定成绩等级 (成绩对应等级 90-100:A级 80-89:B级 70-79:C级 60-69:D级 其它:不合格),使用switch-case语句实现
分析:
var score = 98 var grad = 'A'
100/10 -> 10
90-99 /10 -> 9
80-89 /10 -> 8
70-79 /10 -> 7
60-69 /10 -> 6
<script>
var score = 100
var grade
switch(parseInt(score/10)){
case 10:
case 9:
grade= "A级"
break
case 8:
grade= "B级"
break
case 7:
grade= "C级"
break
case 6:
grade= "D级"
break
default:grade="不及格"
}
console.log(score +"分"+grade)
</script>
3.三目运算
1.两个符号组成的语句
2.if-else语句
if(条件){
语句块1
}else if{
语句块2
}
条件 ?语句1(条件为true执行) :语句2(条件为false执行)
<script>
var a = 34
var b = 56
var c = 27
var max = a > b ? (a > c ? a : c) : (b > c ? b : c)
console.log('最大值是 ', max)
</script>