三大结构
顺序结构
var num = 100
console.log(num)
条件分支结构
if(条件){ }
if(条件){
}else{
}
循环结构
循环结构语句三种:while do while for
while循环
语法:注:循环体一定要有 改变条件的语句否则成为死循环
先判断 后执行
初始化条件
while(结束条件){
需要执行的代码
递增条件
}
// 100以内的所有数之和
var sum = 0;
var n = 100;
while(n>0){
sum=sum+n;
n=n-1;
}
document.write(sum)
while(条件){
循环体
}
do while循环
先执行一次 再判断条件符合就循环 不符合就跳出循环
语法
do{
//循环体
} while(条件表达式);
例题
//正序输出1到10
var n = 1
do{
console.log(n);
n++
}while(n<=10)
console.log('循环结束');
例题
for循环
语法
for(初始化;条件;改变条件){
循环体
例题
//打印1到10
for(var n= 1;n<=10;n++){
console.log(n);
}
// 打印100以内能被4整除的数
// 打印100以内能被4整除的数
for(var i = 1;i<=100;i++){
var num = i
if(num%4==0){
console.log(num);
}
}
六个练习题
一定要复杂问题简单化,比如打印1-100的偶数,要先打印1-100的数,再从里面挑出符合条件的偶数,分成两部,更简单
// 正序输出1 - 10
// for (var i = 1; i <= 10; i++) {
// console.log(i);
// }
// 打印出1 - 100 里所有的偶数
// for (var i = 1; i <= 100; i++) {
// if (i % 2 === 0) {
// console.log(i);
// }
// }
// 打印出1 - 100 里所有的奇数
// for (var i = 1; i <= 100; i++) {
// if (i % 2 === 1) {
// console.log(i);
// }
// }
// 打印100以内7的倍数
// for (var i = 1; i <= 100; i++) {
// if (i % 7 === 0) {
// console.log(i);
// }
// }
// 打印100以内能被4整除的数
// for (var i = 1; i <= 100; i++) {
// if (i % 4 === 0) {
// console.log(i);
// }
// }
// 1 + 2 + 3 + 4 + ...100 的和
// var sum = 0
// for (var i = 1; i <= 100; i++) {
// sum += i
// }
// console.log(sum);
跳转语句
break
与循环语句一起使用
作用:直接终止循环,结束循环
例题 有五个包子,吃完第三个就饱了,后面两个不吃
for (var i = 1; i <= 5; i++) {
console.log('吃了', i, '个包子');
if (i == 3) {
break
}
}
continue语句
结束本次循环,继续下一次循环
例题 有五个包子,吃完第三个包子,第四个包子掉了,不吃,吃第五个
for (var n = 1; n <= 5; n++) {
if (n == 4) {
continue
}
console.log('吃了第', n, '个包子');
}
计数器
var sum = 0
for (let i = 1; i <=5; i++) {
if (i==3) {
continue
}
console.log('吃了第', i, '个包子');
sum++
}
console.log('一共吃了'+sum+'个包子');
document.write打印
不会换行 加br
双重for循环
用星号打印菱形
<script>
var n = prompt('请输入打印的行数');
for(var i = 1;i<=n;i++){
for(var j =1;j<=n-i;j++){
document.write(' ');
}
for(var z=1;z<=2*i-1;z++){
document.write('* ');
}
document.write('<br>');
}
for(var i = 1;i<=n;i++){
for(var j = 1;j<=i;j++){
document.write(' ');
}
for(var z=1;z<=2*n-2*i-1;z++){
document.write('* ')
}
document.write('<br>');
}
</script>
累加算法
<script>
//100个1相加的和
var s = 0;
for(var i = 1;i<=100;i++){
s=s+1
}
console.log(s);
//1+2+3+4+...+100的和
var s = 0;
for(var i = 1;i<=100;i++){
s=s+i
}
console.log(s);
//入职薪水10K,每年涨幅5%,50年后 工资多少?求该员工50年总共拿了多少工资?
var s = 10000*12;
var a = s
for(var i = 2;i<=50;i++){
s=s*0.05+s
a= a+s
}
console.log(s);
console.log(a);
</script>
目录