2.编写PL/SQL程序,完成杨辉三角输出,输出行数由键盘输入的数字确定。 * *** ***** ******* *********
时间: 2023-11-21 17:06:16 浏览: 44
```sql
-- PL/SQL程序,完成杨辉三角输出,输出行数由键盘输入的数字确定
DECLARE
n NUMBER(2); -- 输入的行数
i NUMBER(2); -- 行数循环变量
j NUMBER(2); -- 列数循环变量
a NUMBER(10,10); -- 二维数组
BEGIN
n := &input_num; -- 从键盘输入行数
a(1,1) := 1; -- 初始化第一行第一列为1
FOR i IN 2..n LOOP -- 从第二行开始循环
FOR j IN 1..i LOOP -- 循环每一列
IF j = 1 OR j = i THEN -- 如果是第一列或最后一列,赋值为1
a(i,j) := 1;
ELSE -- 否则,根据杨辉三角规律计算
a(i,j) := a(i-1,j-1) + a(i-1,j);
END IF;
END LOOP;
END LOOP;
FOR i IN 1..n LOOP -- 循环输出杨辉三角
FOR j IN 1..n-i LOOP -- 输出空格
DBMS_OUTPUT.PUT(' ');
END LOOP;
FOR j IN 1..i LOOP -- 输出数字
DBMS_OUTPUT.PUT(a(i,j)||' ');
END LOOP;
DBMS_OUTPUT.NEW_LINE; -- 换行
END LOOP;
END;
```