JS小案例(基础好烦恼少)----持续更新

  1 ***************************************************
  2 <!DOCTYPE html>
  3 <html lang="en">
  4 <head>
  5     <meta charset="UTF-8">
  6     <title>Document</title>
  7     
  8 </head>
  9 <body>
 10     本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少?
 11 </body>
 12 </html>
 13 <script>
 14     var money=10000;
 15     var rote=0.003;
 16     for(i=1;i<=5;i++){
 17         // money=money+money*rote;
 18         
 19         money*=1+rote;
 20     }
 21     alert(money);    
 22 </script>
 23 
 24 ***********************************************************
 25 <!DOCTYPE html>
 26 <html lang="en">
 27 <head>
 28     <meta charset="UTF-8">
 29     <title>Document</title>
 30 </head>
 31 <body>
 32     有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子,而一对兔子从出生后第3个月起每月生一对小兔子。假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月)能繁殖成多少对?
 33 兔子的规律为数列,1,1,2,      3,      5,           8,   13,     21
 34                  n1 n2 n3=n1+n2,n4=n2+n3,n5=n4+n3......
 35 斐波那契数列:1,1,2,3,5,8,13,21,34,55,89,144...........
 36 </body>
 37 </html>
 38 <script>
 39     var n1=1;
 40     var n2=1;
 41     var temp=0;
 42     for(var i=3;i<=12;i++){
 43     temp=n2;//temp=n2=1    temp=n2=2          temp=n2=3          temp=n2=5
 44     n2=n1+n2;//2(n2)=1+1   3(n2)=n1(1)+n2(2)  5(n2)=n1(2)+n2(3)  8(n2)=n1(3)+n2(5)
 45     n1=temp;//n1=1         n1=2               n1=3               n1=5
 46     }
 47     alert(n2);
 48 </script>
 49 144
 50 *************************************
 51 <!DOCTYPE html>
 52 <html lang="en">
 53 <head>
 54     <meta charset="UTF-8">
 55     <title>Document</title>
 56 </head>
 57 <body>
 58     
 59     //需求:打印宽9,长9的正方形<br>
 60 </body>
 61 </html>
 62 <script>
 63     for(var j=1;j<=9;j++){
 64         for(var i=1;i<=9;i++){
 65             document.write("★");
 66         }
 67         document.write("<br>");
 68     }
 69 </script>
 70 ★★★★★★★★★
 71 ★★★★★★★★★
 72 ★★★★★★★★★
 73 ★★★★★★★★★
 74 ★★★★★★★★★
 75 ★★★★★★★★★
 76 ★★★★★★★★★
 77 ★★★★★★★★★
 78 ★★★★★★★★★
 79 *****************************************
 80 <!DOCTYPE html>
 81 <html lang="en">
 82 <head>
 83     <meta charset="UTF-8">
 84     <title>Document</title>
 85 </head>
 86 <body>
 87     
 88     //需求:打印宽9,长9的正方形<br>
 89     //需求:打印宽9,长9的直角三角形<br>
 90 </body>
 91 </html>
 92 <script>
 93     for(var j=1;j<=9;j++){
 94         for(var i=1;i<=9;i++){
 95             document.write("★");
 96         }
 97         document.write("<br>");
 98     }
 99     document.write("<br>");
100     for(var j=1;j<=9;j++){
101         for(var i=1;i<=j;i++){
102             document.write("☆");
103         }
104         document.write("<br>");
105     }
106 </script>
107 **********************************************
108 <!DOCTYPE html>
109 <html lang="en">
110 <head>
111     <meta charset="UTF-8">
112     <title>Document</title>
113 </head>
114 <body>
115     
116     //需求:打印宽9,长9的正方形<br>
117     //需求:打印宽9,长9的直角三角形<br>
118     //需求:表格输出99乘法表<br>
119 </body>
120 </html>
121 <script>
122     for(var j=1;j<=9;j++){
123         for(var i=1;i<=9;i++){
124             document.write("★");
125         }
126         document.write("<br>");
127     }
128     document.write("<br>");
129     for(var j=1;j<=9;j++){
130         for(var i=1;i<=j;i++){
131             document.write("☆");
132         }
133         document.write("<br>");
134     }
135 
136 
137     document.write("<br>");
138 
139     document.write("<table border='1'>");
140     
141     for(var j=1;j<=9;j++){
142         document.write("<tr>");
143         for(var i=1;i<=j;i++){
144             
145             document.write("<td>");
146             document.write(i+"X"+j+"="+i*j);
147             document.write("</td>");
148             
149         }
150         document.write("</tr>");
151         
152     }
153 
154 
155     document.write("</table>");
156 </script>
157 158 ☆☆
159 ☆☆☆
160 ☆☆☆☆
161 ☆☆☆☆☆
162 ☆☆☆☆☆☆
163 ☆☆☆☆☆☆☆
164 ☆☆☆☆☆☆☆☆
165 ☆☆☆☆☆☆☆☆☆
166 
167 1X1=1
168 1X2=2    2X2=4
169 1X3=3    2X3=6    3X3=9
170 1X4=4    2X4=8    3X4=12    4X4=16
171 1X5=5    2X5=10    3X5=15    4X5=20    5X5=25
172 1X6=6    2X6=12    3X6=18    4X6=24    5X6=30    6X6=36
173 1X7=7    2X7=14    3X7=21    4X7=28    5X7=35    6X7=42    7X7=49
174 1X8=8    2X8=16    3X8=24    4X8=32    5X8=40    6X8=48    7X8=56    8X8=64
175 1X9=9    2X9=18    3X9=27    4X9=36    5X9=45    6X9=54    7X9=63    8X9=72    9X9=81
176 ************************************************
177 下三角:
178   document.write("<table border='1'>");
179         for(var i=9;i>=1;i--){
180             document.write("<tr>");
181             for(var j=1;j<=i;j++){
182                 document.write("<td>");
183                 document.write(j+"X"+i+"="+i*j);
184                 document.write("</td>");
185             }
186             document.write("</tr>");
187         }
188         document.write("</table>");
189 1X9=9    2X9=18    3X9=27    4X9=36    5X9=45    6X9=54    7X9=63    8X9=72    9X9=81
190 1X8=8    2X8=16    3X8=24    4X8=32    5X8=40    6X8=48    7X8=56    8X8=64
191 1X7=7    2X7=14    3X7=21    4X7=28    5X7=35    6X7=42    7X7=49
192 1X6=6    2X6=12    3X6=18    4X6=24    5X6=30    6X6=36
193 1X5=5    2X5=10    3X5=15    4X5=20    5X5=25
194 1X4=4    2X4=8    3X4=12    4X4=16
195 1X3=3    2X3=6    3X3=9
196 1X2=2    2X2=4
197 1X1=1
198 **********************************************
199 计算出1—100之间所有不能被3整除的整数的和大于(或等于)2000的数字。
200 var sum=0;
201      for(var i=1;i<=100;i++){
202          if(i%3!==0){
203              sum+=i;
204              if(sum>=2000){
205                  document.write(sum+"<br>");
206              }
207          }
208 
209 ******************************************
210 //计算出1到100之间所有不能被7整除的整数之和(用continue)
211         var sum=0;
212         for(var i=1;i<=100;i++){
213             if(i%7===0){
214                 continue;//4315
215                 //break;//21  1+2+3+4+5+6=21
216             }else{
217                 sum+=i;
218             }
219         }
220         alert(sum);
221      }
222 ******************************************
223 //求1到100之间所有不能被3整除的整数的第一个大于2000的和
224 var sum=0;
225         for(var i=1;i<=100;i++){
226             if(i%3===0){
227                 continue;
228                 }
229                 sum+=i;
230                 if(sum>2000){
231                     
232                     alert(sum);
233                     break;
234                 }
235             }
236 ***************************************
237   //求200-300之间第一个能被7整数的数
238            for(var i=200;i<=300;i++){
239                     if(i%7===0){
240                         alert(i);
241                         break;
242                     }
243                     }
244 ********************************************
245 死循环(去掉注释就不死循环)
246    var sum = 0;
247    var i=1;
248    while(true){
249        sum+=i;
250        i++;
251       // if(i>100){
252           // break;
253        //}
254    }
255    alert(sum);
256 ***************************************
257     //一、求一组数中的所有数的和和平均值
258         var a=[20,33,55];
259         var sum=0;
260         var avg=0;
261         var l=a.length;
262         for(var i=0;i<l;i++){
263              sum+=a[i];
264         }
265        avg=sum/l;
266        document.write(avg);
267 ***********************************************
268  //三、求一组数中的最大值和最小值 并给出位置;
269   var a=[10,20,40,30];
270   var max=a[0];//不能指定一个数为最大值[var max=0](除非是确定的情况下),应该用数组里面的值,a[0]即让数组第一个值作为比较的最大值.
271   var maxaddress=0;
272   var min=a[0];
273   var minaddress=0;
274   for(var i=0;i<a.length;i++){
275       if(max<a[i]){
276           max=a[i];
277           maxaddress=i
278       }
279       if(min>a[i]){
280           min=a[i];
281           minaddress=i
282       }
283   }
284   alert("最大数为"+max+"位置为第"+(maxaddress+1)+"个");
285   alert("最小数为"+min+"位置为第"+(minaddress+1)+"个");
286 *******************************************************
287 <!DOCTYPE html>
288 <html lang="en">
289 <head>
290     <meta charset="UTF-8">
291     <title>Document</title>
292     <script>
293         //var a=new Array(-12,34,56,88,32,"aa","-34.33","-34.34",12.23);
294         /*var a=new Array(prompt("请输入数字"));
295         document.write(a);*/
296         var b=prompt("请输入要比较的数,用","号隔开");
297         var a=new Array();
298         a=b.split(",");
299         // for(var j=0;j<a.length;j++){
300         //          document.write(a[j]);
301         // }
302         alert(typeof(a)+"  JS数组本质是对象啊!!");//本质是对象 PHP数组就是数组,没有属性(比如length)
303         document.write(a+"<br>");
304         console.log(a+"<br>");
305         var max=parseFloat(a[0]);
306         //document.write(max);
307         var maxaddress=0;
308         var min=parseFloat(a[0]);
309         var minaddress=0;
310         
311         for(var i=0;i<=a.length;i++){
312             var shu=parseFloat(a[i]);
313             if(shu>max){
314                 max=shu;
315                 maxaddress=i;
316             }
317             if(shu<min){
318                 min=a[i];
319                 minaddress=i;
320             }
321         }
322         document.write("最大数为"+max+"位置为第"+(maxaddress+1)+"个"+"<br>");
323         document.write("最小数为"+min+"位置为第"+(minaddress+1)+"个");
324     </script>
325 </head>
326 <body>
327     
328 </body>
329 </html>
330 *************************************************
331 
332         //三、将字符串数组用|或其他符号分割
333    var arr = ["吕超","赵云","典韦","关羽","马超","张飞"];
334    var str = arr[0];
335    var separator = "|";
336   //为了避免第一个名字前有|,把第一个名字从数组中取出,赋值给str,然后在链接其他名字。
337    for(var i=1;i<arr.length;i++){
338        str += separator+ arr[i];
339    }
340    document.write(str);
341 
342 //即str=arr[0]+|+arr[1]+|+arr[2]+|......
343 ****************************************************
344  //四、将数组中值为0的去掉,不为0的存入一个新数组
345    var arr=["吕超",0,"赵云","典韦",0,"关羽","马超",0,"张飞",0];
346    var arr2=new Array();
347    for(var i=0;i<arr.length;i++){
348        if(arr[i]===0){
349            continue;
350        }else{
351            arr2[arr2.length]=arr[i];//arr2.length是关键点
352        }
353    }
354    document.write(arr2+"<br>");
355 **********************************************
356 
357     //四、将数组中值为0的去掉,不为0的存入一个新数组
358 //    var arr = [0,"刘备",0,"关羽",0,"张飞",0];
359 //    var newArr = [];
360 //    for(var i=0;i<arr.length;i++){
361 //        //判断,如果不是0,放入新数组
362 //        if(arr[i] !== 0){
363 //            newArr[newArr.length] = arr[i];
364 //        }
365 //    }
366 //    console.log(newArr);
367 
368 **************************************
  1 //五、翻转数组
  2 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。
  3 ar arr = ["吕超","赵云","典韦","关羽","马超","张飞"];
  4 var arr2=new Array();
  5 for(var i=0;i<arr.length;i++){
  6 arr2[arr2.length]=arr[arr.length-1-i];//arr2.lenght是自增的从0开始 arr.length是知道的,arr.length-1-i就是这个数组的最后一个赋值给arr2的第一个(为什么要-1,因为数组从0开始计数的,length是大于最大数组的下标+1的)
  7 }
  8 document.write(arr2);
  9 
 10 扩展思维,第二种:
 11 var arr = ["吕超","赵云","典韦","关羽","马超","张飞"];
 12 var arr2=new Array();
 13 for(var i=arr.length-1;i>=0;i--){//直接自己就倒叙了,这样倒序的第一个进入arr2的正序第一个
 14 arr2[arr2.length]=arr[i];
 15 }
 16 document.write(arr2);
 17 
 18 拓展思维,第三种 
 19 //思路:实现方法:1.操作原数组,让原数组第一位和最后一个位调换位置,以此类推
 20 var arr = ["吕超","赵云","典韦","关羽","马超","张飞"];
 21 
 22 for(var i=0;i<arr.length/2;i++){//这里为什么/2 因为这个算法是首尾交换,执行到数组的一半的时候,首尾其实已经完成了 不/2 那么还会继续交换,又会返回为原先的数组 等于没有交换.
 23 var temp=arr[i];
 24 arr[i]=arr[arr.length-1-i];
 25 arr[arr.length-1-i]=temp;
 26 }
 27 document.write(arr);
 28 *****************************************************
 29 冒泡排序(双重for循环 第一个for控制轮数 第二个for控制次数 比较的轮数为数据个数-1 比较的次数为数据个数-1)
 30 <!DOCTYPE html>
 31 <html lang="en">
 32 <head>
 33 <meta charset="UTF-8">
 34 <title>Document</title>
 35 <script>
 36 var a=[45,67,23,88,21,6,99];
 37 var temp=[];
 38 var m=0;//轮数
 39 var n=0;//一共次数
 40 for(var i=0;i<a.length-1;i++){//这里不减1 后面轮数就+1 这是不对的 因为数组下标0开始
 41 for(var j=0;j<a.length-1;j++){
 42 if(a[j]>a[j+1]){//后面的大于前面的 后面再前 前面在后 从小到大
 43 temp=a[j];//a[j]=temp;
 44 a[j]=a[j+1];//a[j+1]=a[j];
 45 a[j+1]=temp;//a[j+1]=temp
 46 //顺序不能调换 因为a[]里面有个下标是一定从小到大的
 47 }
 48 n++
 49 }
 50 m++;
 51 }
 52 //document.write(a.length);
 53 document.write(a+"<br>");
 54 document.write("轮数"+m+"<br>");
 55 document.write("总次数"+n+"<br>");
 56 // a1 a2
 57 // 3 2
 58 // temp
 59 
 60 // 2 3
 61 // temp
 62 
 63 // 2 3 
 64 // temp
 65 
 66 
 67 // 第一轮 6次
 68 // 45 67 23 88 21 6 99
 69 // 45 23 67 88 21 6 99
 70 // 45 23 67 88 21 6 99
 71 // 45 23 67 21 88 6 99
 72 // 45 23 67 21 6 88 99
 73 // 45 23 67 21 6 88 99
 74 
 75 // 第二轮 6次
 76 // 23 45 67 21 6 88 99
 77 // 23 45 67 21 6 88 99
 78 // 23 45 21 67 6 88 99
 79 // 23 45 21 6 67 88 99
 80 // 23 45 21 6 67 88 99
 81 // 23 45 21 6 67 88 99
 82 
 83 // 第三轮 6次
 84 // 23 45 21 6 67 88 99
 85 // 23 21 45 6 67 88 99
 86 // 23 21 6 45 67 88 99
 87 // 23 21 6 45 67 88 99
 88 // 23 21 6 45 67 88 99
 89 // 23 21 6 45 67 88 99
 90 
 91 // 第四轮 6次
 92 // 21 23 6 45 67 88 99
 93 // 21 6 23 45 67 88 99
 94 // 21 6 23 45 67 88 99
 95 // 21 6 23 45 67 88 99
 96 // 21 6 23 45 67 88 99
 97 // 21 6 23 45 67 88 99
 98 
 99 // 第五轮 6次
100 // 6 21 23 45 67 88 99
101 // 6 21 23 45 67 88 99
102 // 6 21 23 45 67 88 99
103 // 6 21 23 45 67 88 99
104 // 6 21 23 45 67 88 99
105 // 6 21 23 45 67 88 99
106 // 第六轮 6次(这个第6轮即使后面已经成型了 它还是按照程序走一遍)
107 // 6 21 23 45 67 88 99
108 // 6 21 23 45 67 88 99
109 // 6 21 23 45 67 88 99
110 // 6 21 23 45 67 88 99
111 // 6 21 23 45 67 88 99
112 // 6 21 23 45 67 88 99
113 
114 
115 </script>
116 </head>
117 <body>
118 
119 </body>
120 </html>
121 ********************************
122 冒泡排序优化://每轮比较少比较一次。(每一轮都会比较出一个最大值,然后后一轮没有必要再比较了,所以没比较一轮,就少比较一次。。。) j<a.length-1-i
123 <!DOCTYPE html>
124 <html lang="en">
125 <head>
126 <meta charset="UTF-8">
127 <title>Document</title>
128 <script>
129 var a=[45,67,23,88,21,6,99];
130 var temp=[];
131 var m=0;//轮数
132 var n=0;//一共次数
133 for(var i=0;i<a.length-1;i++){//这里不减1 后面轮数就+1 这是不对的 因为数组下标0开始
134 for(var j=0;j<a.length-1-i;j++){ //每轮比较少比较一次。(每一轮都会比较出一个最大值,然后后一轮没有必要再比较了,所以没比较一轮,就少比较一次。。。)
135 if(a[j]>a[j+1]){//后面的大于前面的 后面再前 前面在后 从小到大
136 temp=a[j];//a[j]=temp;
137 a[j]=a[j+1];//a[j+1]=a[j];
138 a[j+1]=temp;//a[j+1]=temp
139 //顺序不能调换 因为a[]里面有个下标是一定从小到大的
140 }
141 n++
142 }
143 m++;
144 }
145 //document.write(a.length);
146 document.write(a+"<br>");
147 document.write("轮数"+m+"<br>");
148 document.write("总次数"+n+"<br>");
149 // a1 a2
150 // 3 2
151 // temp
152 
153 // 2 3
154 // temp
155 
156 // 2 3 
157 // temp
158 
159 45,67,23,88,21,6,99
160 // 第一轮 6次
161 // 45 67 23 88 21 6 99
162 // 45 23 67 88 21 6 99
163 // 45 23 67 88 21 6 99
164 // 45 23 67 21 88 6 99
165 // 45 23 67 21 6 88 99
166 // 45 23 67 21 6 88 99
167 
168 // 第二轮 6次
169 // 23 45 67 21 6 88 99
170 // 23 45 67 21 6 88 99
171 // 23 45 21 67 6 88 99
172 // 23 45 21 6 67 88 99
173 // 23 45 21 6 67 88 99
174 // 23 45 21 6 67 88 99
175 
176 // 第三轮 6次
177 // 23 45 21 6 67 88 99
178 // 23 21 45 6 67 88 99
179 // 23 21 6 45 67 88 99
180 // 23 21 6 45 67 88 99
181 // 23 21 6 45 67 88 99
182 // 23 21 6 45 67 88 99
183 
184 // 第四轮 6次
185 // 21 23 6 45 67 88 99
186 // 21 6 23 45 67 88 99
187 // 21 6 23 45 67 88 99
188 // 21 6 23 45 67 88 99
189 // 21 6 23 45 67 88 99
190 // 21 6 23 45 67 88 99
191 
192 // 第五轮 6次
193 // 6 21 23 45 67 88 99
194 // 6 21 23 45 67 88 99
195 // 6 21 23 45 67 88 99
196 // 6 21 23 45 67 88 99
197 // 6 21 23 45 67 88 99
198 // 6 21 23 45 67 88 99
199 // 第六轮 6次(这个第6轮即使后面已经成型了 它还是按照程序走一遍)
200 // 6 21 23 45 67 88 99
201 // 6 21 23 45 67 88 99
202 // 6 21 23 45 67 88 99
203 // 6 21 23 45 67 88 99
204 // 6 21 23 45 67 88 99
205 // 6 21 23 45 67 88 99
206 
207  
208 
209 // 第一轮 6次
210 // 45 67 23 88 21 6 99
211 // 45 23 67 88 21 6 99
212 // 45 23 67 88 21 6 99
213 // 45 23 67 21 88 6 99
214 // 45 23 67 21 6 88 99
215 // 45 23 67 21 6 88 99
216 
217 // 第二轮 5次
218 // 23 45 67 21 6 88 99
219 // 23 45 67 21 6 88 99
220 // 23 45 21 67 6 88 99
221 // 23 45 21 6 67 88 99
222 // 23 45 21 6 67 88 99
223 
224 // 第三轮 4次
225 // 23 45 21 6 67 88 99
226 // 23 21 45 6 67 88 99
227 // 23 21 6 45 67 88 99
228 // 23 21 6 45 67 88 99
229 
230 // 第四轮 3次
231 // 21 23 6 45 67 88 99
232 // 21 6 23 45 67 88 99
233 // 21 6 23 45 67 88 99
234 
235 
236 // 第五轮 2次
237 // 6 21 23 45 67 88 99
238 // 6 21 23 45 67 88 99
239 
240 // 第六轮 1次
241 // 6 21 23 45 67 88 99
242 
243 </script>
244 </head>
245 <body>
246 
247 </body>
248 </html>
249 ****************************
250 冒泡排序优化2:5轮 5+4+3+2+1=11次
251 做一个判断
252 如果在比较的时候 两两不发生比较了 就退出循环 
253 <!DOCTYPE html>
254 <html lang="en">
255 <head>
256 <meta charset="UTF-8">
257 <title>Document</title>
258 <script>
259 var a=[45,67,23,88,21,6,99];
260 //var a=[1,2,3,4,5,6,7,8,9];
261 var temp=[];
262 var m=0;//轮数
263 var n=0;//一共次数
264 //如果比较完备提前结束比较。(判断,如果本次比较没有移动任何元素,那么说明已经比较完成)
265 for(var i=0;i<a.length-1;i++){//这里不减1 后面轮数就+1 这是不对的 因为数组下标0开始
266 //开闭原则。(写在第一个for循环里,是为了,每轮比较初始化bool变量变为true。)
267 var bool=true;
268 for(var j=0;j<a.length-1-i;j++){ //每轮比较少比较一次。(每一轮都会比较出一个最大值,然后后一轮没有必要再比较了,所以没比较一轮,就少比较一次。。。)
269 if(a[j]>a[j+1]){//后面的大于前面的 后面再前 前面在后 从小到大
270 temp=a[j];//a[j]=temp;
271 a[j]=a[j+1];//a[j+1]=a[j];
272 a[j+1]=temp;//a[j+1]=temp
273 //顺序不能调换 因为a[]里面有个下标是一定从小到大的
274 bool=false;
275 n++;
276 }
277 
278 }
279 
280 //bool这个变量默认值为true;如果本轮比较有一对元素相互交换位置,那么也不能跳出循环。
281 //但是,如果本轮比较没有任何元素相互交换位置,那么说明已经比较完成,可以跳出循环。
282 if(bool){
283 break;
284 }
285 m++;
286 }
287 //document.write(a.length);
288 document.write(a+"<br>");
289 
290 document.write("总次数"+n+"<br>");
291 document.write("轮数"+m+"<br>");
292 // a1 a2
293 // 3 2
294 // temp
295 
296 // 2 3
297 // temp
298 
299 // 2 3 
300 // temp
301 
302 
303 // 第一轮 6次
304 // 45 67 23 88 21 6 99
305 // 45 23 67 88 21 6 99
306 // 45 23 67 88 21 6 99
307 // 45 23 67 21 88 6 99
308 // 45 23 67 21 6 88 99
309 // 45 23 67 21 6 88 99
310 
311 // 第二轮 6次
312 // 23 45 67 21 6 88 99
313 // 23 45 67 21 6 88 99
314 // 23 45 21 67 6 88 99
315 // 23 45 21 6 67 88 99
316 // 23 45 21 6 67 88 99
317 // 23 45 21 6 67 88 99
318 
319 // 第三轮 6次
320 // 23 45 21 6 67 88 99
321 // 23 21 45 6 67 88 99
322 // 23 21 6 45 67 88 99
323 // 23 21 6 45 67 88 99
324 // 23 21 6 45 67 88 99
325 // 23 21 6 45 67 88 99
326 
327 // 第四轮 6次
328 // 21 23 6 45 67 88 99
329 // 21 6 23 45 67 88 99
330 // 21 6 23 45 67 88 99
331 // 21 6 23 45 67 88 99
332 // 21 6 23 45 67 88 99
333 // 21 6 23 45 67 88 99
334 
335 // 第五轮 6次
336 // 6 21 23 45 67 88 99
337 // 6 21 23 45 67 88 99
338 // 6 21 23 45 67 88 99
339 // 6 21 23 45 67 88 99
340 // 6 21 23 45 67 88 99
341 // 6 21 23 45 67 88 99
342 // 第六轮 6次(这个第6轮即使后面已经成型了 它还是按照程序走一遍)
343 // 6 21 23 45 67 88 99
344 // 6 21 23 45 67 88 99
345 // 6 21 23 45 67 88 99
346 // 6 21 23 45 67 88 99
347 // 6 21 23 45 67 88 99
348 // 6 21 23 45 67 88 99
349 
350  
351 
352 // 第一轮 6次
353 // 45 67 23 88 21 6 99
354 // 45 23 67 88 21 6 99
355 // 45 23 67 88 21 6 99
356 // 45 23 67 21 88 6 99
357 // 45 23 67 21 6 88 99
358 // 45 23 67 21 6 88 99
359 
360 // 第二轮 5次
361 // 23 45 67 21 6 88 99
362 // 23 45 67 21 6 88 99
363 // 23 45 21 67 6 88 99
364 // 23 45 21 6 67 88 99
365 // 23 45 21 6 67 88 99
366 
367 // 第三轮 4次
368 // 23 45 21 6 67 88 99
369 // 23 21 45 6 67 88 99
370 // 23 21 6 45 67 88 99
371 // 23 21 6 45 67 88 99
372 
373 // 第四轮 3次
374 // 21 23 6 45 67 88 99
375 // 21 6 23 45 67 88 99
376 // 21 6 23 45 67 88 99
377 
378 
379 // 第五轮 2次
380 // 6 21 23 45 67 88 99
381 // 6 21 23 45 67 88 99
382 
383 // 第六轮 1次
384 // 6 21 23 45 67 88 99
385 
386 </script>
387 </head>
388 <body>
389 
390 </body>
391 </html> 
392 // 第一轮 5次
393 // 45 67 23 88 21 6 99
394 // 45 23 67 88 21 6 99
395 // 45 23 67 88 21 6 99
396 // 45 23 67 21 88 6 99
397 // 45 23 67 21 6 88 99
398 
399 
400 // 第二轮 4次
401 // 23 45 67 21 6 88 99
402 // 23 45 67 21 6 88 99
403 // 23 45 21 67 6 88 99
404 // 23 45 21 6 67 88 99
405 
406 
407 // 第三轮 3次
408 // 23 45 21 6 67 88 99
409 // 23 21 45 6 67 88 99
410 // 23 21 6 45 67 88 99
411 
412 
413 // 第四轮 2次
414 // 21 23 6 45 67 88 99
415 // 21 6 23 45 67 88 99
416 
417  
418 
419 // 第五轮 1次
420 // 6 21 23 45 67 88 99
421 
422 
423 // 第六轮 0次
424 *******************************
425 PHP冒泡排序
426 $b=array('4','3','8','9','2','1');
427 $len=count($b);//6
428 第一种:
429 for($k=0;$k<=$len;$k++)
430 {
431 for($j=$len-1;$j>$k;$j--){
432 if($b[$j]<$b[$j-1]){
433 $temp = $b[$j];
434 $b[$j] = $b[$j-1];
435 $b[$j-1] = $temp;
436 }
437 }
438 }
439 第二种:
440 for($k=1;$k<$len;$k++)
441 {
442 for($j=0;$j<$len-$k;$j++){
443 if($b[$j]>$b[$j+1]){
444 $temp =$b[$j+1];
445 $b[$j+1] =$b[$j] ;
446 $b[$j] = $temp;
447 }
448 }
449 }
450 
451 
452 
453  
原文地址:https://www.cnblogs.com/xuyiyixuan/p/7044562.html