[JS选择结构 习题练习]

回顾知识点:选择结构:单分支-if(){}、双分支-if(){} else{}、多分枝-if(){} else if(){}、switch()

 1、输入一个同学的成绩:

60-70分为D等级,70-80分为C等级 ,80-90分为B等级,90-100分为A等级,不及格-60为E等级,最后输出这个同学到底是哪个分段。

var score = parseInt(prompt('请输入成绩:')); //声明一个变量score来装学生的成绩
if(score >= 0){
   if(score >= 60 && score <= 70){
   console.log('D等级');
    }else if(score >= 70 && score < 80){
    console.log('C等级');
    }else if(score >= 80 && score < 90){
    console.log('B等级');
    }else if(score >= 90 && score <= 100){
    console.log('A等级');
    }else{
    console.log('不及格');
    }
}else{
    console.log('请输入正确的分数');
}

2、用户输入整数:
        如果输入的是1~6 的整数,则程序输出:your number is in 1~6.  c=(用户输入的数) 
        如果输入的是其它数字,输出:Your number is too large. c=(用户输入的数)。 

var num = Number(prompt('请输入一个整数'));//声明一个变量num来装用户输入的整数
//先判断是不是整数
if(num%1 === 0){
    //如果输入的是整数
    if(num >=1 && num <= 6){
    console.log('your number is in 1~6.  c=' + num);
    }else{
    //如果输入的是其它的数字
    console.log('Your number is too large. c=' + num);
    }
}else{
console.log('请输入正确的数');
}

3、输入一个年份,判断是否是闰年,输出闰年的条件是:

1).能被4整除,但同时不能被100整除的年份都是闰年;
2).能被400整除的年份是闰年;
(只有这两种情况是闰年,其它情况都不是闰年)

var year = Number(prompt('请输入一个年份'));//声明一个变量year来装用户输入的年份
if(((year%4 === 0) && (year%100 !== 0)) || (year%400 === 0)){
console.log('是闰年');
}else{
console.log('不是闰年');
}

4、编写代码:运输公司对用户计算运费.路程越远每公里运费越低。

每公里每吨货物的基本运费为10,货物重为w,距离为s,折扣为d,

则总运费f的计算公式为:f=10*w*s*(1-d)。

s<250km        没有折扣

250<=s<500     2%折扣

 500<=s<1000    5%折扣

1000<=s<2000   8%折扣

 2000<=s<3000   10%折扣

 3000<=s        15%折扣

var w = Number(prompt('请输入货物重:'));
var s = Number(prompt('请输入距离:'));
var d;//折扣
if(s<250){
   d = 0;
}else if(s>=250 && s<500){
    d = 0.02;
}else if(s>=500 && s<1000){
    d = 0.05;
}else if(s>=1000 && s<2000){
    d = 0.08;
}else if(s>=2000 && s<3000){
    d = 0.1;
}else{
    d = 0.15;
}
console.log('折扣d=',d);
console.log('总运费f=',10*w*s*(1-d));

5、模拟自动饮料机,要求:

1)当输入0时,模拟自动饮料机停止运行;

2)自动饮料机运行的过程中,当输入1-5时候给出对应的饮料(1.可口可乐 2.雪碧 3.鲜橙多 4.冰红茶 5.矿泉水);

3)输入其他值的时候给出非法操作提示,并提示重新输入;

var num = Number(prompt('请输入一个数字'));
if(num === 0){
console.log('停止运行');
}else if(num === 1){
console.log('可口可乐');
}else{
console.log('非法操作,请重新输入!');
}

6、输入三个数,找出最大的数  不考虑相等的情况下。

var num1 = Number(prompt('请输入第一个数字:'));
var num2 = Number(prompt('请输入第二个数字:'));
var num3 = Number(prompt('请输入第三个数字:'));
if(num1 > num2 && num1 > num3){
console.log(num1 + '是最大数');
}else if(num2 > num1 && num2 > num3){
console.log(num2 + '是最大数');
}else if(num3 > num1 && num3 > num2){
console.log(num3 + '是最大数');
}

 7、输入三个数,求组成的最大数。

var num1 = Number(prompt('请输入第一个数字'));
var num2 = Number(prompt('请输入第二个数字'));
var num3 = Number(prompt('请输入第三个数字'));
if(num1 >= num2 && num1 >= num3){
    if(num2 >= num3){
        console.log(num1*100+num2*10+num3);
    }else{
        console.log(num1*100+num3*10+num2);
    }
}else if(num2 >= num1 && num2 >= num3){
    if(num1 >= num3){
        console.log(num2*100+num1*10+num3);
    }else{
        console.log(num2*100+num3*10+num1);
    }
}else if(num3 >= num1 && num3 >= num2){
    if(num1 >= num2){
        console.log(num3*100+num1*10+num2);
    }else{
        console.log(num3*100+num2*10+num1);
    }
}

8、输入一个数字,让程序告诉你今天是星期几。

方法一:用多分支if(){} else if(){}语句
var num = Number(prompt('请输入第一个数字'));//Number()将输入的数字类型转为数值类型
if(num == 1){
console.log('星期一');
}else if(num == 2){
console.log('星期二');
}else if(num == 3){
console.log('星期三');
}else if(num == 4){
console.log('星期四');
}else if(num == 5){
console.log('星期五');
}else if(num == 6){
console.log('星期六');
}else if(num == 7){
console.log('星期天');
}else{
console.log('请输入正确的数字');
}
方法二:用switch()语句
switch(num){
    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;
    case 7 : console.log('星期天');break;
    default : console.log('请输入正确的数字');
}

9、随意输入一个三位数,判断是不是水仙花数。

例:水仙花数 153=1*1*1+5*5*5+3*3*3

        var num = parseInt(prompt('请随意输入一个三位数'));
        var hundred = parseInt(num/100);//声明变量hundred来装百位数
        var ten = parseInt(num%100/10);//声明变量ten来装十位数
        var unit = num%100%10;//声明变量unit来装个位数
        if(num === (hundred*hundred*hundred) + (ten*ten*ten) + (unit*unit*unit)){
            console.log('这个数是水仙花数');
        }else{
            console.log('这个数不是水仙花数');
        }

 10、按年/月/日的顺序输入一个任意日期,在页面输出:这是这一年的第几天。

如:2016年1月2日 是2016年的第2天,而2016年12月31日则是2016年的第366天(因为闰年会多一天)

        var year = parseInt(prompt('输入一个年份'));//声明一个变量year来装年份
        var month = parseInt(prompt('输入一个月份'));//声明一个变量month来装月份
        var date = parseInt(prompt('输入一个天数'));//声明一个变量date来装天数
        var sum; //装总天数
        switch (month) {
            case 1: sum = date; break;
            case 2: sum = 31 + date; break;
            case 3: sum = 31 + 28 + date; break;
        }
        //额外考虑闰年
        if (month > 2) {
            if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
                sum++
            }
        }
        console.log("这是" + year + "年的第" + sum + "天");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡萝卜爱吃小白兔!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值