用js代码打印菱形
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text" id="row">
<input type="button" onclick="test()" value="确定">
</body>
</html>
<script>
//1、循环行数
//2、获取每一行星星的个数
//3、获取每一行空格的数量
//4、先循环每一行空格的数量,再循环每一行星星的数量
//5、每一行的空格和星星循环之后,输出换行
// 2*i-1代表中间一行以上每一行星星的个数
//2*(row-i+1)-1代表中间一行以下每一行星星的个数
//(row-x)/2代表空格的数量 x代表星星
function test(){
var row = parseInt(document.getElementById('row').value);
var mid = parseInt(row/2)+1;//mid代表中间一行
for(var i = 1; i<=row;i++){
//每一行星星的个数
if (i<mid) {
var x = 2*i-1;
} else{
var x = 2*(row-i+1)-1;
}
//空格的数量
var k = (row-x)/2;
//输出每一行空格的数量
for(var j = k; j > 0; j--){
document.write(' ')
}
//输出每一行星星的数量
for(var s = 1; s <= x; s++){
document.write('*')
}
document.write('<br>')
}
}
</script>