项目三:流程控制语句报告和代码
流程控制语句
设备仪器/软件环境
1.Windows 10系统
2.HBuilder
实验(实训)/目标
1.了解什么是流程控制语句
2.掌握分支结构的语法结构和用法
3.掌握循环语句的用法
4.掌握break语句与continue语句的用法
实验(实训)
过程/步骤
1.同步案例3-4:通过if…else语句判断两个数中的最大值。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var x=prompt("请输入第1个数:");
var y=prompt("请输入第2个数:");
if(x>y)
alert("这两个数的最大值是:"+x);
else
alert("这两个数的最大值是:"+y);
</script>
</body>
</html>
2.同步案例3-5:通过else…if语句判断今天是星期几。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var date=new Date();
document.write(date);
document.writeln("今天是:");
if(date.getDay()==1){
document.writeln("星期一");
}
else if(date.getDay()==2){
document.writeln("星期二");
}
else if(date.getDay()==3){
document.writeln("星期三");
}
else if(date.getDay()==4){
document.writeln("星期四");
}
else if(date.getDay()==5){
document.writeln("星期五");
}
else if(date.getDay()==6){
document.writeln("星期六");
}
else{
document.writeln("星期日");
}
</script>
</body>
</html>
3.同步案例3-6:通过switch语句判断今天是星期几。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var date=new Date();
document.writeln("今天是:");
switch(date.getDay()){
case 1:
document.writeln("星期一");
break;
case 2:
document.writeln("星期二");
break;
case 3:
document.writeln("星期三");
break;
case 4:
document.writeln("星期四");
break;
case 5:
document.writeln("星期五");
break;
case 6:
document.writeln("星期六");
break;
default:
document.writeln("星期日");
}
</script>
</body>
</html>
4.同步案例3-7:根据成绩给出学生的考评等级。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var score,grade;
score=parseFloat(prompt("请输入学生的成绩:"));
if(score>=90)
grade="优秀";
else{
//由于是else部分,因此score<90
if(score>=60)//此处判定式没有必要写成:score<90&&score>=60
grade="合格";
else
grade="不合格";
//由于是else部分,因此score<90
}
alert("根据学生成绩:"+score+",评定为:"+grade);
</script>
</body>
</html>
5.同步案例3-8:通过for循环求1到100的累加和。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var i,sum=0;
for(i=1;i<=100;i++){
sum+=i;
}
alert("1+2+3+...+100="+sum);
</script>
</body>
</html>
6.同步案例3-9:通过while循环求1到100的奇数累加和。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var i=1,sum=0;
while(i<=100){
sum+=i;
i=i+2;
}
alert("1+3+5+...+99="+sum);
</script>
</body>
</html>
7.同步案例3-10:通过do…while循环求1到100的偶数累加和。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var i=2,sum=0;
do{
sum+=i;
i=i+2;
}
while(i<=100)
alert("2+4+6+...+100="+sum);
</script>
</body>
</html>
8.同步案例3-11:输出“*”组成的直角三角形图案。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var i,j;
for(i=1;i<=5;i++)
{
document.write(" ");
for(j=1;j<=i;j++){
document.write("*");
document.write(" ");
}
document.writeln("</br>");
}
</script>
</body>
</html>
9.同步案例3-12:通过continue和break来控制程序是否继续运行。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var input,input_number,sum=0;
while(true){
input=prompt("sum="+sum+"\n请输入新的累加数(输入Q/q结束):");
if(input=="Q"||input=="q")break;
input_number=parseFloat(input);
if(isNaN(input_number))continue;
if(input_number<=0)continue;
sum+=input_number;
}
alert("sum"+sum);
</script>
</body>
</html>
10.综合案例3:随机答题的小游戏。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var x,y,result,answer,go_on;
while(true){
x=Math.floor(Math.random()*90)+10;
y=Math.floor(Math.random()*90)+10;
result=x+y;
answer=parseFloat(prompt(x+"+"+y+"="));
go_on=confirm((answer==result?"答对":"答错")+"!\t继续测试吗?");
if(!go_on)break;}
</script>
</body>
</html>
结果记录与分析总结
1.同步案例3-4:通过if…else语句判断两个数中的最大值的截图。
2.同步案例3-5:通过else…if语句判断今天是星期几的截图。
3.同步案例3-6:通过switch语句判断今天是星期几的截图。
4.同步案例3-7:根据成绩给出学生的考评等级的截图。
5.同步案例3-8:通过for循环求1到100的累加和的截图。
6.同步案例3-9:通过while循环求1到100的奇数累加和的截图。
7.同步案例3-10:通过do…while循环求1到100的偶数累加和的截图。
8.同步案例3-11:输出“*”组成的直角三角形图案的截图。
9.同步案例3-12:通过continue和break来控制程序是否继续运行的截图。
10.综合案例3:随机答题的小游戏的截图。
二、总结
JavaScript有3种最常用的消息对话框,分别是警示对话框(alert)、确认对话框(comfirm)和提示对话框(prompt)。JavaScript有3种最常用的流程语句,分别是顺序结构语句、条件分支结构语句和循环结构语句。
JavaScript条件分支结构分为if语句和switch语句,其中if语句又分为简单if语句、if…else语句和else if语句,if语句是可以相互嵌套的。JavaScript的循环结构语句分为for循环、while循环和do…while循环,循环语句也是可以相互嵌套的。do…while循环和while循环的主要区别是while循环语句在执行循环体之前检查表达式的值,do…while循环语句在执行循环体之后检查表达式的值。do…while循环语句在执行时至少执行一次循环体。
break语句一般用在if分支语句和循环语句中,执行break可以直接退出语句,continue语句只能用在循环语句中,指的是退出本次循环,不执行后面的语句,重新返回循环根据循环条件判断是否继续执行。