下面的方法貌似没用数组,但实际上换汤不换药
用table自带的数组解决问题<html>
<head>
<script language="javascript">
function init(n){
var table = document.getElementById("abc");
for(var i = 0; i < n; i++){
var row = table.insertRow(-1);
for(var j = 0; j <= i; j++){
var cell = row.insertCell(-1);
if(j == 0 || j == i){
cell.innerHTML = 1;
}else if(i > 0){
var first = parseInt(table.rows[i - 1].cells[j - 1].innerHTML);
var second = table.rows[i - 1].cells[j] == null ? 0 : parseInt(table.rows[i - 1].cells[j].innerHTML);
cell.innerHTML = first + second;
}
}
}
}
</script></head><body onload="init(10)">
<table id="abc"></table>
</body>
</html>

解决方案 »

  1.   

    蹭这20的高分:
    <html>
    <body>
    <script type="text/javascript">
    function triangle(col, row) {
    if (row == 0 || col == row)
    return 1;
    else return triangle(col - 1, row - 1) + triangle(col - 1, row);
    }function output(n) {
    for (var i = 0; i <= n; i++) {
    for (var j = 0; j <= i; j++)
    document.write("&nbsp;" + triangle(i, j));
    document.write("<br />");
    }
    }
    output(10);
    </script>
    </body>
    </html>
      

  2.   

    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>杨辉三角</title>
    </head><body>
    <style>
    .d{float:left;width:50px;}
    </style><div id=y3>杨辉三角<br></div>
    <input type=button value="next" onclick=nextY3()>
    <input type=button value="auto" onclick=autoY3()>
    <input type=button value="reset" onclick=resetDiv()>
    <script language="javascript">
    <!--
    var n=0
    function nextY3(){
    n++
    createDiv("Y3_"+n,null,$("y3"))
    for (var i=0;i<n;i++)var newobj=createDiv(null,"d",$("Y3_"+n))
    $("Y3_"+n).innerHTML+="<br>"
    for (var i=0;i<n;i++){
    if (i==0)$$("Y3_"+n)[0].innerHTML=1
    else if($("Y3_"+(n-1))){
    var lastDiv=$$("Y3_"+(n-1))
    $$("Y3_"+n)[i].innerHTML=parseInt(lastDiv[i-1].innerHTML)+parseInt((lastDiv[i])?lastDiv[i].innerHTML:0)
    }
    }
    }function resetDiv(){
    n=0;
    $("y3").innerHTML=""
    }
    function autoY3(){
    resetDiv()
    var k=10
    for(var i=0;i<k;i++)nextY3()
    }
    function createDiv(_id,_class,_parent){
    var newDiv=document.createElement("div")
    if (_id)newDiv.id=_id
    if (_class)newDiv.className=_class
    _parent.appendChild(newDiv)
    }function $(id){return document.getElementById(id)}
    function $$(id){return $(id).getElementsByTagName("div")}
    //-->
    </script>
    </body></html>