1 for循环
1.1 格式
for循环语句也称为计次循环语句,一般用于循环次数已知的情况,语法格式如下:
for(initialize;test;increment){
statement
}
1.2 执行流程
2 练习
2.1 打印1-100之间所有奇数之和
//创建一个变量,用来保存奇数之和
//var sum = 0;
//打印1-100之间的数
for(var i=1 , sum=0 ; i<=100 ; i++){
//判断i是否是奇数
//不能被2整除的数就是奇数
if(i%2 != 0){
//如果i除以2有余数则证明i是奇数
//console.log(i);
sum = sum+i;
}
}
2.2 打印1-100之间所有7的倍数的个数及总和
//定义一个变量,来保存总和
var sum = 0;
//定义一个计数器,来记录数量
var count = 0;
//打印1-100之间所有的数
for(var i=1 ; i<=100 ; i++){
//判断i是否是7的倍数
if(i % 7 == 0){
//console.log(i);
sum += i;
//使计数器自增1
count++;
}
}
//输出总和
console.log("总和为:"+sum);
//输出总数
console.log("总数量为:"+count);
2.3 水仙花数
//打印所有的三位数
for(var i=100 ; i<1000 ; i++){
//获取i的百位十位个位的数字
//获取百位数字
var bai = parseInt(i/100);
//获取十位的数字
var shi = parseInt((i-bai*100)/10);
//获取个位数字
var ge = i % 10;
//判断i是否是水仙花数
if(bai*bai*bai + shi*shi*shi + ge*ge*ge == i){
console.log(i);
}
}
2.4 质数
var num = prompt("请输入一个大于1的整数:");
//判断这个值是否合法
if(num <= 1){
alert("该值不合法!");
}else{
//创建一个变量来保存当前的数的状态
//默认当前num是质数
var flag = true;
//判断num是否是质数
//获取2-num之间的数
for(var i=2 ; i<num ; i++){
//console.log(i);
//判断num是否能被i整除
if(num % i == 0){
//如果num能被i整除,则说明num一定不是质数
//设置flag为false
flag = false;
}
}
//如果num是质数则输出
if(flag){
alert(num+ "是质数!!!");
}else{
alert("这个不是质数")
}
}
3 嵌套for循环
3.1 输出图形
for (var i = 0; i < 5; i++) {
for (var j = 0; j <= i; j++) {
document.write("*");
}
document.write("<br />");
}
document.write("<br />");
for (var i = 0; i < 5; i++) {
document.write("*****<br />");
}
document.write("<br />");
for (var i = 0; i < 5; i++) {
for (var j = 0; j < (5-i); j++) {
document.write("*");
}
document.write("<br />");
}
3.2 九九乘法表
<script type="text/javascript">
document.write("<table border='1' cellpadding='1'>");
// 99乘法表
for(var i=1;i<=9;i++){
document.write("<tr>");
// 循环列
for(var j=1;j<=i;j++){
document.write("<td>"+j+"*"+i+"="+i*j+"</td>");
}
document.write("</tr>");
}
document.write("</table>");
</script>
//创建外层循环,用来控制乘法表的高度
for(var i=1 ; i<=9 ; i++ ){
//创建一个内层循环来控制图形的宽度
for(var j=1 ; j<=i ; j++){
document.write("<span>"+j+"*"+i+"="+i*j+"</span>");
}
//输出一个换行
document.write("<br />");
}
3.3 打印出1-100之间所有的质数
//打印2-100之间所有的数
for(var i=2 ; i<=100 ; i++){
//创建一个布尔值,用来保存结果,默认i是质数
var flag = true;
//判断i是否是质数
//获取到2-i之间的所有的数
for(var j=2 ; j<i ; j++){
//判断i是否能被j整除
if(i%j == 0){
//如果进入判断则证明i不是质数,修改flag值为false
flag = false;
}
}
//如果是质数,则打印i的值
if(flag){
console.log(i);
}
}