循环:一遍又一遍重复执行的相同代码或类似的代码
循环特色:
一、循环的条件
规定了循环的执行次数
二、循环操做
要执行相同或类似的语句--循环作什么事情
三、循环的变量
作循环的记录
while循环结构
一、语法
while(条件){//条件:获得的结构必须是boolean
//循环体 ---重复作的事情
}
循环语句中的控制语句
一、continue
终止本次循环的执行,继续下一次循环
二、break
退出循环结构
流程:
一、判断 循环条件
二、若是条件为真,则执行循环体 ; 更改循环变量的值 ----更改的方向是趋向于结束循环
三、再一次判断条件 ,若是条件为真则继续执行循环体 ....
四、止到条件为假 ,则结束循环javascript
例子:html
用while()循环来计算1+2+3 ... +98+99+100的值:java
<html> <head> <title>计算1+2+3 ... +98+99+100的值</title> </head> <body> <script language="JavaScript" type="text/javascript"> var total=0; var i=1; while(i<=100){ total+=i; i++; } alert(total); </script> </body> </html>
例子c++
珠峰海拔8848米,如今有足够大的纸,厚度是0.01米,折多少次高度能够超过珠穆朗玛峰函数
var i=0; while(h<8848){ h*=2; i++; } document.write('折叠'+i+'次能超过珠穆朗玛峰,'+'纸高:'+h);
do...while循环结构spa
1.语法:
do{
//循环体
}while(条件)
2.流程
一、执行一次循环体
二、判断循环条件是否知足
若是条件为真,则继续执行循环体
若是条件为假,则退出循环
3.do while 和 while之间的区别
do..while至少执行一次 先执行 再判断
while 可能一次都不执行 先判断 后执行code
do-while()循环来计算1+2+3 ... +98+99+100的值:htm
代码以下 blog
<html>
<head>
<title>计算1+2+3 ... +98+99+100的值</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
var total=0; var i=1; do{ total+=i; i++; }while(i<=100); alert(total); </script>
</body>
</html>
例子2.反复接收用户输入,且打印用户输入的内容,知道输入的是exit为止ip
<script>
function fun() { do{ var input=prompt("请输入:"); console.log(input); }while(input != "exit" ); } </script>
<button onclick="fun()">反复接收用户输入(do..while版)</button>
for循环
一、语法
for(表达式1;表达式2;表达式3){
循环操做 4
}
表达式1:声明条件 1
表达式2:循环条件判断 2
表达式3:更新循环变量 3
例子:/控制台打印1-100之间全部的数字
function fun(){ for(var i=1;i<=100;i++){ console.log(i); } console.log(i); }
打印10*10个※的正方形,效果以下:
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
※※※※※※※※※※
<script>
//打印10*10个※的正方形
var s=''; for(var i=0;i<10;i++){ for(var h=0;h<10;h++){ s+='※'; } s+='\n'; } console.log(s) </script>
打印出下图所示图形
※※※※※※※※※※
※※※※※※※※※
※※※※※※※※
※※※※※※※
※※※※※※
※※※※※
※※※※
※※※
※※
※
var s=''; for(var i=0;i<10;i++){ for(var h=i;h<10;h++){ s+='※'; } s+='\n'; } console.log(s)
计算100内不能被7整除的全部数的和
var s=0; for(var i=0;i<=100;i++){ if(i%7==0){ continue; } s+=i; } console.log(s)
200-300中第一个能被7整除的数
for(var i=200;i<300;i++){ if(i%7==0){ console.log(i); break; } }
<script type="text/javascript">
for(var i=1;i<=9;i++){ for(var j=1;j<=i;j++){ document.write(j+"*"+i+"="+i*j+"\t"); } document.write("<br />"); } </script>
判断101-200之间有多少个素数,并输出全部素数。
function fun1(){ for(var i=101,count=0;i<200;i++){ var flag=false; for(j=2;j<i;j++){ if(i%j == 0){ flag=false; break; }else{ flag=true; } } if(flag){ count++; console.log("素数为:"+i) } } }
打印出全部的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数自己。
例如:153是一个"水仙花数",由于153=1的三次方+5的三次方+3的三次方。
for(i=100;i<1000;i++){
var a= parseInt(i%10); //个
var b=parseInt((i/10)%10); //十
var c=parseInt(i/100); //百
if(a*a*a+b*b*b+c*c*c==i){
document.write('水仙花数:'+i+'<hr />');
}
}
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
function fun(){ var num = Number(prompt("请输入一个数:")); var count=Number(prompt("叠加的个数:")) var n=0,sum=0;//n表示每个加数,sum表示全部累加的和 for(var i=1;i<=count;i++){ n=n*10+num;//每个加数 sum+=n; } console.log(sum); }
猴子吃桃问题:猴子第一天摘下若干个桃子,立即吃了一半,还不瘾,又多吃了一个 次日早上又将剩下的桃子吃掉一半,又多吃了一个。
之后天天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
第一天采了 x 个桃子,x/2 - 1 = 剩下的桃子。
// 因此 ( 剩下的桃子 + 1 ) * 2 = 等于 x ,此处的 x 为前一天的桃子
// var x
// for(x=1;x<=9;x++){
// x=(x+1)*2;
// console.log(x)
// }
前一天/2 - 1 =后一天
后一天 + 1 = 前一天/2
前一天 = (后一天 + 1)*2
function tao() {
var sum = 1 // 第10天 剩余1个
for (var i = 9 ; i > 0 ; i --) {
// i 等于几 就是计算第几天时候的 桃子,最后i 等于1 计算第一天的
sum = (sum + 1) * 2
}
console.log('第一天共摘了多少'+sum+'个桃')
}
有5我的坐在一块儿,问第五我的多少岁?他说比第4我的大2岁。问第4我的岁数,他说比第3我的大2岁。
问第三我的,又说比第2人大两岁。问第2我的,说比第一我的大两岁。最后问第一我的,他说是10岁。请问第五我的多大?
var sum=10 for(var i=0;i<4;i++){ sum=sum+2; } console.log(sum)
计算用户输入的数字的阶乘,例如用户输入的是5,则计算5的阶乘,5的阶乘为 5*4*3*2*1
var num=prompt("输出一个数的阶层") var sum=1; for(var k=2;k<=num;k++){ sum=k+"*"+sum; } document.write("阶层为:"+sum)
定义一个函数,返回1+1/3+1/5+1/7+....1/n的和
function fun(){ var n=prompt("输出一个数"); var sum=0; for(var i = 1; i <=n; i++){ if(i%2!=0){ sum+=1/i; } console.log("和为:"+sum) } }
1~100奇数和
var sum=0; for(var i=1;i<=100;i+=2){ sum+=i; } document.write(sum+"<br />");
1~100偶数和
var sum=0; for(var i=2;i<=100;i+=2){ sum+=i; } document.write(sum);
小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元整好花掉,可若有哪些购买结合?
//a=洗发水,b=香皂,c=牙刷
//100元能够买6瓶洗发水
for(var a=0;a<=6;a++){
//100元能够买50块香皂
for(var b=0;b<=50;b++){
//100元能够买20个牙刷
for(var c=0;c<=20;c++){
//条件
if(15*a+2*b+5*c==100){
document.write("洗发水:"+a+"香皂:"+b+"牙刷:"+c+"<hr />");
}
}
}
}
打印出下列图形
●●●●●●●●
●●●●●●●●
●●●●●●●●
●●●●●●●●
●●●●●●●●
●●●●●●●●
●●●●●●●●
//循环的行数 for(var x=1;x<=7;x++){ //循环的列数 for(var y=1;y<=8;y++){ document.write('●'); } //循环完每一行输出一个换行 document.write('<br />'); }
求1-100之间能被3整除的全部数
<script type="text/javascript">
var sum = 0; for(var i =0;i<= 100;i++){ if (i%3 == 0){ sum += i; } } document.write(sum);