JavaScript知识点:分支结构(if、switch)+算法例题
if-else分支
1.if条件应该是boolean类型的值或表达式
2.如果条件不是Boolean,会进行自动转换
以下几种情况会默认转换为 false:
if(0)、if(0.0)
if(NaN)、if(undefined)
if("")、if(null)
if(false)
switch-case执行流程:
1.解析变量或表达式中的值
2.用解析出来的值与case后的值进行比较 等值运行代码块
3.如果值不相等,就执行default:后的代码块
switch直落模式:
两个或多个case之间没有任何操作代码,表示这两个或多个块要执行同样的代码块,如:
switch(变量/表达式){
case 值1:
case 值2:
case 值3:
语句块;
break;
default:语句块;
break;
}
以下是一些算法题的代码:(执行时需要改变函数的函数名调用每一个例题函数执行)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>分支结构</title>
</head>
<body>
<!-- 编写一个收银程序,根据商品的单价、购买的数量以及收款金额计算并输出应收金额和找零 -->
<script type="text/javascript">
function getMoney(){
// 定义输入变量:商品单价price、购买的的数量count、
// 收款金额money
var price,cont,money;
//定义输出变量:消费金额sumPrice、找零coins
var sumPrice,coins;
// 弹框接受输入的值:单价、数量
price = prompt("请输入商品单价:");
count = prompt("请输入商品数量:");
// 计算商品总价
sumPrice = price*count;
// 判断是否打折
if(sumPrice>=500){
sumPrice *=0.8;
alert("您消费到达500,享受8折优惠!");
}
alert("您共消费:"+sumPrice+"元");
// 接受付款金额
money = prompt("请付钱:");
//判断付款金额是否大于消费金额
if(money >= sumPrice){
// 计算找零
count = money - sumPrice;
alert("找您:"+count);
}
else
alert("钱不够!"); }
getMoney();//函数调用口
</script>
<script type="text/javascript">
//1. 通过弹框输入年月日,判断该日是这一年的第多少天?
function ymd(){
// 定义输入变量
var year = prompt("请输入年份:");
var month = prompt("请输入月份:");
var date = prompt("请输入日期:");
// 通过月份判断
switch(Number(month)){
case 1:month =0;break;
case 2:month=31;break;
case 3:month=59;break;
case 4:month=90;break;
case 5:month=120;break;
case 6:month=151;break;
case 7:month=181;break;
case 8:month=212;break;
case 9:month=243;break;
case 10:month=273;break;
case 11:month=304;break;
case 12:month=334;break;
}
date=month + Number(date);
// 判断输入年份是否是闰年
if((year%4==0 && year%100!=0) || year%400==0){
if(month>=2)
date +=1;
}
console.log("今天是今年的第:"+date+"天");
}
// 2.模拟电话银行按键程序
function bank(){
// 通过switch选择系统功能
var press = prompt("请输入数字选择功能(1.查询余额2.取款3.转换4.退出系统):");
switch(Number(press)){
case 1:seek();break;
case 2:draw();break;
case 3:change();break;
case 4:exit();break;
}
function seek(){
console.log("余额查询中……");
}
function draw(){
console.log("取款进行中……");
}
function change(){
console.log("转账进行中……");
}
function exit(){
console.log("退出系统,谢谢使用!");
}
}
// 3.买保险
// 已婚都可以买
// 未婚男<25不买
// 未婚女<22不买
function insure(){
// 弹框接受员工信息:婚否、性别、年龄
var isMarry = prompt("是否已婚(Y|N):");
var sex = prompt("请输入性别(M|W):");
var age = prompt("请输入年龄:");
if(isMarry=="Y"){
console.log("公司为您提供保险!");
}else if ((sex=="M" &&age<25)||(sex=="W" && age<22)) {
console.log("不满足公司提供保险条件!");
}else{
console.log("满足公司提供保险条件!");
}
}
// 4.某超市促销活动
// 会员总价>100 八折 <100 9折
// 非会员>100 九折 <100 不打折
function superMk(){
//弹框询问是否是会员(0|1)
//弹框询问商品总价格
//定义变量:是否会员isVIP、价格price
var isVIP = prompt("是否是会员(0|1):");
var price = prompt("商品总价格为:");
// 判断是否是会员
if(isVIP==1){
if(price>100){
price = price *0.8;
console.log("您是会员且购买金额超过100可以打八折"); }else{
price = price * 0.9;
console.log("您是会员可以打九折!");
}
}else if(price>100){
console.log("您购买金额超过100可以打九折!");
price = price *0.9;
}
console.log("您需要付款:"+price+"元");
}
// 5.计算1-100之间的和、乘积
function sumPro(){
var sum=0,product = 1;
for(var i=1;i<=100;i++){
sum += i;
product *= i;
}
console.log("和为:"+sum,"乘积为:"+product);
}
// 6.九九乘法表
// 1*1=1
// 1*1=1 1*2=2
function multTable(){
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <=i; j++) {
var mult = i*j;
document.write(j + "*" + i + "=" + mult); }
document.write("<br/>")
}
}
multTable();//函数调用口 </script>
</body>
</html>
JavaScript知识点:分支结构(if、switch)+算法例题的更多相关文章
- python 中分支结构(switch)
可通过字典调用:{1:case1,2:case2}.get(x,lambda *args,**key:)() # 编写一个计算器 # -*- coding=utf-8 -*- def jia(x,y) ...
- Java(6)流程控制语句中分支结构if与switch
作者:季沐测试笔记 原文地址:https://www.cnblogs.com/testero/p/15201528.html 博客主页:https://www.cnblogs.com/testero ...
- [java基础]分支结构(2)
[java基础]分支结构2 switch case /** 文件路径:G:\JavaByHands\if-else\ 文件名称:switchcase.java 编写时间:2016/6/6 作 者:郑晨 ...
- JS基础_条件分支语句:switch语句
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- php第一天-分支结构,循环结构,特殊的流程控制语句
1.单向条件分支结构 <?php if(true) { echo "yes"; } ?> 2.双向条件分支结构 <?php $a = 10; if($a < ...
- JavaScript中的分支结构
说到JavaScript中的分支结构,我们就不得不提到流程控制这个词,我们所有的程序都是由数据和算法组成的.程序=数据+算法通常我们所说的算法都可以通过"顺序","分支& ...
- JAVA if条件语句,switch多分支结构,与逻辑运算符
一.if条件语句 示例: import java.util.Scanner; public class Test{ public static void main(String[] args){ Sc ...
- Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)
一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...
- JavaScript 基础——使用js的三种方式,js中的变量,js中的输出语句,js中的运算符;js中的分支结构
JavaScript 1.是什么:基于浏览器 基于(面向)对象 事件驱动 脚本语言 2.作用:表单验证,减轻服务器压力 添加野面动画效果 动态更改页面内容 Ajax网络请求 () 3.组成部分:ECM ...
随机推荐
- [Java复习] 缓存Cache part2
7. Redis持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的? 为什么要持久化? 如果只是存在内存里,如果redis宕机再重启,内存数据就丢失了,所以要用持久化机 ...
- PAT 甲级 1033 To Fill or Not to Fill (25 分)(贪心,误以为动态规划,忽视了油量问题)*
1033 To Fill or Not to Fill (25 分) With highways available, driving a car from Hangzhou to any oth ...
- LeetCode_111. Minimum Depth of Binary Tree
111. Minimum Depth of Binary Tree Easy Given a binary tree, find its minimum depth. The minimum dept ...
- mysql正则替换某个字段值里面的某个字符串
sql语句如下: UPDATE `ccvms_video` SET title=REPLACE(title, "最", "相对") WHERE title LI ...
- 第十五章 单点登录——《跟我学Shiro》
目录贴:跟我学Shiro目录贴 Shiro 1.2开始提供了Jasig CAS单点登录的支持,单点登录主要用于多系统集成,即在多个系统中,用户只需要到一个中央服务器登录一次即可访问这些系统中的任何一个 ...
- 【VS2015软件报错】命名空间 system.windows 中不存在类型或命名空间名称 forms (是否缺少程序集引用 )错误
C#项目: 添加“using System.Windows.Forms;”之后提示“命名空间 system.windows 中不存在类型或命名空间名称 forms (是否缺少程序集引用 )”错误 详细 ...
- ML.Net Model Builder
ML.Net Model Builder ML.NET技术研究系列1-入门篇 近期团队在研究机器学习,希望通过机器学习实现补丁发布评估,系统异常检测.业务场景归纳一下: 收集整理数据(发布相关的异 ...
- 使用runtime完成解档归档
简单的创建一个Person对象,并声明几个属性 @interface Person : NSObject<NSCoding> // 归档问题 必须遵守该协议 /** */ @propert ...
- OpenCV Python 4.0安装
1.安装OpenCV-Python 如果你是第一次使用OpenCV Python开发包,想要安装OpenCV Python4.0只要执行如下命令行即可: pip install opencv-pyth ...
- 1024多人激情在线聊天室---select函数的使用
效果展示 step1.服务器启动!端口号3006 step2.1号客户端启动!jack加入了群聊 step3.2号客户端启动!kelly加入了群聊 step4.3号客户端启动!zwj加入了群聊 ste ...