if语句2017-03-17
1、If语句:
if(判断条件){
判断为true的时候执行的语句
}
else{
判断为false的时候执行的语句
}
2、If else语句:
if(判断条件){
判断为true的时候执行的语句
}
else if(判断条件){
第一个判断为false 且 满足第二个判断条件为true
}
3、If嵌套:
if(判断条件){
if(判断条件){
执行语句
}
Else{
}
}
Else{
}
4、Switch…..case语句:
switch(参数){
case 参数值 :
执行语句;
break;
case 参数值 :
执行语句;
break;
case 参数值 :
执行语句;
break;
default:
执行语句;
break;
}
例:
<script>
var i = prompt();
i = parseInt(i);
switch(i){
case 1:
alert('1');
break;
case 2:
alert('2');
break;
case 3:
alert('3');
break;
default :
alert('没有');
}
</script>
例题:
1.输入三个整数,xyz,最终以从小到大的方式输出。利用嵌套。
解:
var x=prompt("输入第一个数字");
var y=prompt("输入第二个数字");
var z=prompt("输入第三个数字");
x=parseInt(x);
y=parseInt(y);
z=parseInt(z);
if(x<y){
if(y<z){
alert(x+"小于" +y +"小于"+z);
}
else {
if(x<z){
alert(x+"小于"+ z +"小于"+y);
}
else{
alert(z+"小于"+x+"小于"+y);}
}
}
else{
if (x<z){
alert(y+"小于"+x+"小于"+z);
}
else{
if(y<z){
alert(y+"小于"+z+"小于"+x);
}
else{
alert(z+"小于"+y+"小于"+x);
}
}
}
</script>
难点:
(1)考虑的可能不全。
(2)当输入142,34,678时,排序不正确;parseInt()可以解决。(原因???)
2.输入学生姓名,输入考试成绩
若是100,【恭喜你***,满分通过!】
若是大于等于80小于100,【**,你很优秀,继续保持!】
若是大于等于60小于80,【**成绩良好】
大于等于50小于60,【**就差一点点,下次一定要至少及格!】
小于50,【**你是笨蛋么?】
解: <script language="JavaScript">
var name=prompt("输入学生姓名");
var b=prompt("输入考试成绩");
if (b==100){
alert("恭喜你"+name+",满分通过!");
}
else if(b>=80 && b<100){
alert(name+",你很优秀,继续保持!");
}
else if(b >=60&&b<80){
alert(name+"成绩良好!");
}
else if(b>=50&&b<60){
alert(name+"就差一点点,下次一定要至少及格!");
}
else {
alert(name+"你是笨蛋么!");
}
</script>
3.相亲过程:你有房子么?你有钱么?你有能力么?
【结婚吧】【先买房子在结婚】【先赚钱再买房子再结婚】都没有【拜拜~~】
利用if嵌套做相亲过程
解:
<script language="JavaScript">
var a=prompt("你有房子么,有房子请输入1");
if(a==1){
alert("结婚");}
else{
var b=prompt("你有钱么,有钱请输入1");
if(b==1){
alert("先买房子再结婚吧");}
else{
var c=prompt("你有能力么,有能力请输入1");
if (c==1){
alert("先赚钱再买房子再结婚吧");
}
else{
alert("拜拜~");
}
}
}
</script>
难点:题目理解错误。
4.方程ax2+bx+c=0;一元二次方程。求根
△=b2-4ac;若△<0方程无实根
若△>0,方程有两个不相同的实根x1 x2
若△=0,方程有两个相同的实根
某个数进行开平方——Math.Sqrt()
解:
<script language="JavaScript">
var a=prompt("请您输入一个非零数");
if(a==0){
alert("您输入有误");
}
else{
var b=prompt("请您输入第二个数");
var c=prompt("请您输入第三个数");
if ((b*b-4*a*c)==0){
alert("方程有两个相同的实根,根为"+ (-b) / (2 * a) );
}
else if((b*b-4*a*c)<0){
alert("方程无实根");
}
else{
alert("方程有两个不相同的实根,x1为"+
((-b) + Math.sqrt(b*b-4*a*c) )/ (2 * a)+",x2为"+
((-b) - Math.sqrt(b*b-4*a*c) )/ (2 * a));
}
}
</script>
难点:求根公式。Math.sqrt()
5.标准体重:
男士体重=身高-100±3
女士体重=身高-110±3
输入性别、身高、体重,查看体重是否标准。
解:
第一种:
<script language="JavaScript">
var a=prompt("您好,若您为女士,请输入1;若您为男士,请输入0;谢谢 ");
var b=prompt("请输入您的体重");
var c=prompt("请输入您的身高");
if (a=1){
if((c-b)>=107&&(c-b)<=113){
alert("体重在标准范围之内,请继续保持");}
else{
alert("您体重不在标准范围之内,请注意锻炼");}
}
else{
if((c-b)>=97&&(c-b)<=103){
alert("体重在标准范围之内,请继续保持");}
else{
alert("您体重不在标准范围之内,请注意锻炼");}
}
</script>
第二种:
var sex = prompt("请输入你的性别");
if(sex == "男") {
var height = prompt("请输入您的身高");
var weight = prompt("请输入您的体重(公斤)");
if(!isNaN(height) && !isNaN(weight)) {
max_weight = height - 100 + 3;
min_weight = height - 100 - 3;
if(weight < min_weight) {
alert("你营养不良");
} else if(weight > max_weight) {
alert("你该减肥了");
} else {
alert("您是标准体重");
}
} else {
alert("您的输入有误!");
}
} else if(sex == "女") {
var height = prompt("请输入您的身高");
var weight = prompt("请输入您的体重(公斤)");
if(!isNaN(height) && !isNaN(weight)) {
max_weight = height - 110 + 3;
min_weight = height - 110 - 3;
if(weight < min_weight) {
alert("你营养不良");
} else if(weight > max_weight) {
alert("你该减肥了");
} else {
alert("您是标准体重");
}
} else {
alert("您的输入有误!");
}
} else {
alert("您的输入有误");
}
总结:
(1) 审题理解为先。
(2) 考虑的可能性要全;包括输入有误等可能;
(3) 标点不要漏,不要错,不要用中文状态下的;
(4) 代码要规范。