--打印等腰三角形 默認設置爲5行 能夠將代碼中5改成變量
--思路:由於每行最少有一個*而且有偶數個**;並且每行有5-i個空格:並且發現每行由5個以上基本元素組成(好比:第一行由四個空格和一個*;第二行由三個空格,一個**,和一個*組成)因此@j<5
1 DECLARE @I INT,@J INT,@S VARCHAR(30) 2 SET @I=1 3 WHILE @I<=5 4 BEGIN 5 SET @S='' 6 SET @J=1 7 WHILE @J<5 8 BEGIN 9 IF @J<=(5-@I) 10 BEGIN 11 SET @S=@S+' ' 12 END 13 ELSE 14 BEGIN 15 SET @S=@S+'**' 16 END 17 SET @J=@J+1 18 END 19 SET @S =@S+'*' 20 PRINT @S 21 SET @I=@I+1 22 END
結果:spa
--打印實心菱形 默認爲9行
--思路:和三角形相似 只是添加了一個ABS取絕對值,5爲中建行距離中建行的行數差就是要打印的空格數
1 DECLARE @I INT,@J INT,@S VARCHAR(30) 2 SET @I=1 3 WHILE @I<=9 4 BEGIN 5 SET @S='' 6 SET @J=1 7 WHILE @J<5 8 BEGIN 9 IF @J<=ABS(5-@I) 10 BEGIN 11 SET @S=@S+' ' 12 END 13 ELSE 14 BEGIN 15 SET @S=@S+'**' 16 END 17 SET @J=@J+1 18 END 19 SET @S =@S+'*' 20 PRINT @S 21 SET @I=@I+1 22 END