var input = parseInt(window.prompt("输入你的成绩")); document.write("输入的值是:" + input + ".">

渡一教育公开课web前端开发JavaScript精英课学习笔记(三)条件语句,循环语句

if 条件判断语句

if(条件){

    如果条件为真时,执行的代码。

} else {

   如果条件为假时,执行的代码。

}

 

<script type = "text/javascript">
	var input = parseInt(window.prompt("输入你的成绩"));
	document.write("输入的值是:" + input + "<br/>");
	//如果表达式为真,则执行代码块。
	if(input >= 90){
		document.write("优秀");
	}
	//如果表达式为真,则执行代码块。否则执行else代码块。
	if(input >= 75 && input < 90){
		document.write("良好");
	}
	else if(input >= 60 && input < 75){
		document.write("合格");
	}
	else if(input < 60){
		document.write("不合格");
	}
	else{
		document.write("输入的是啥?");
	}
	
	//以下代码不能判断input在 90 和 100 之间,只会返回 90 < input 结果。
	document.write(90< input < 100); 
</script>

for 循环语句

for(语句1,语句2,语句3){

        循环执行的代码。

}

语句1:循环开始时执行。

语句2:循环执行的条件,为真时执行里面的代码。

语句3:每次执行完代码后,执行的语句。

<script type = "text/javascript">
	var input = parseInt(window.prompt("输入循环次数"));
	document.write("输入的值是:" + input + "<br/>");
	//for(
	//第一个表达式:循环开始时执行,初始化循环变量 ;
	//第二个表达式:判断循环变量是否满足条件,满足则执行下一次循环,否则跳出循环 ; 
	//第三个表达式:每次循环结束后执行,更改循环变量;
	//)
	for(var i = 0 ;i < input ; i++){
		document.write('第 ' + (i + 1) + " 次循环.<br/>");
	}
	document.write('i:' + i + "<br/>");
	//另一种for循环写法
	var a = 0;
	for(;;){
		if(a < input){
			document.write('第 ' + (a + 1) + " 次循环.<br/>");
			a ++;
		}
		else{
			break;//用于中断循环,并跳出循环体。
		}
	}
	document.write('a:' + a + "<br/>");
	//另一种for循环写法
	for(;a;){
		document.write('循环 ' + a + " 次.<br/>");
		a --;
	}
	document.write('a:' + a + "<br/>");
</script>

while 循环语句

while(条件){

       执行的代码。

}

判断<条件>为真时执行代码,直到<条件>为假时停止。

 

<script type = "text/javascript">
	var input = parseInt(window.prompt("输入循环次数"));
	document.write("输入的值是:" + input + "<br/>");
	var isStop = false; 
    //如果表达式为真,则执行循环,否则结束循环。
	while(!isStop){
		document.write('循环 ' + input + " 次.<br/>");
		input --;
		isStop = !input;
	}
</script>

do while 循环语句

与while相似,先执行一次循环体,然后判断表达式的值,如果为真则继续执行循环体,否则退出循环。也就是不管表达式是否为真都会执行一次循环体。此循环语句不常用。

switch 条件判断语句

switch(变量){

    case 常量1:

            执行代码。

        break;

   case 常量2:

        执行代码。

    break;

    default:

         执行代码。

      break

}

<变量>与 case 中常量进行对比,如果相等,执行下面的代码,直到 break停止。如果未匹配到,则执行 default 中的代码。

<script type = "text/javascript">
    var input = window.prompt("输入星期几");
    switch (input) {
        case "Monday": //判断input是否等于 Monday 如果等于往下执行,直到遇到 break 或 reutrn。
        case "Tuesday":        //没有 break 或 return 则继续往下执行
        case "Wednesday":
        case "Thursday":
        case "Friday":
            document.write(input,"需要工作!");
            break;    //中断 switch
        case "Saturday":
        case "Sunday":
            document.write(input,"休息~!~");
            break;    //中断 switch
        default:    //如果未匹配到则执行 default 代码段。
                document.write("输入的信息不正确");
            break;
    }
</script>

break 语句

跳过当前循环,并停止循环。(常用)

continue 语句

跳过当前循环,并继续执行下一次循环。(不常用)

 

练习题

计算2的n次幂。

<script type = "text/javascript">
	var input = parseInt(window.prompt("输入2的几次幂"));
	document.write("输入的值是:" + input + "<br/>");
	var result = 2;
	if(input == 0){
		result = 1;
        }
	for(var i = 1; i < input ;i++){
		result *= 2;
	}
	document.write("计算结果:" + result + "<br/>");
</script>

计算n的阶乘。

<script type="text/javascript">
    var input = window.prompt("输入阶乘数");
    var result = 1;
    for (var index = 1; index <= input; index++) {
        document.write( index," * ",result);
        result = result * index;
        document.write("= ",result,"<br/>");
    }
</script>

计算第n位 斐波那契数列 的值。

<script type = "text/javascript">
	var input = parseInt(window.prompt("输入求第几位的值"));
	document.write("输入的次数是:" + input + "<br/>");
        var result1 = 1;
        var result2 = 1;
	for(var i = 2; i < input ;i++){
            result2 += result1;
            result1 = result2 - result1;
	}
	document.write("计算结果:" + result2 + "<br/>");
</script>

反向输出一个多位数

<script type = "text/javascript">
    var input = parseInt(window.prompt("输入一个数字"));
    document.write("输入的数字是:" + input + "<br/>");
    var ten = 10;
    var remainter = 0;
    var result = "";
    while(remainter != input){
        var temp = remainter;
        remainter = input % ten;
        result =  result + (remainter - temp) * 10 / ten;
        ten *= 10;
    }
	document.write("转换结果:" + parseInt( result) + "<br/>");
</script>

输入三个数字,选出最大的

<script type = "text/javascript">
	var input1 = parseInt(window.prompt("输入第一个数"));
	var input2 = parseInt(window.prompt("输入第二个数"));
    var input3 = parseInt(window.prompt("输入第三个数"));
    var max = 0;
    if(input1 > input2){
        if(input1 > input3){
           max = input1;
        }
        else{
            max = input3;
        }
    }
    else{
        if(input2 > input3){
            max = input2;
        }
        else{
            max = input3;
        }
    }
    
	document.write("最大值:" + max  + "<br/>");
</script>

打印100以内的质数(只能被1和本身整除的数)

<script type = "text/javascript">
    var input = parseInt(window.prompt("输入最大数"));
    for (var index = 2; index <= input; index++) {
        var is = true;
        for(var i = 2;i < index;i++){  //index 可以使用数学函数取平方根 Math.sqrt(index);
            if(index % i == 0){
                is = false;
                break;
            }
        }
        if(is){
            document.write("质数:",index,"<br/>");
        }
    }
</script>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值