(含最容易理解的详细注释)实验7-2-6 打印杨辉三角 (20分)
#include#include#include#include#includeint main(){ int n, i, j, k, arr[10][10] = {0}; //先将二维数组全部初始化为0,为后面计算不是1的元素做准备。 scanf("%d", &n); for ( i = 0; i < n; i++) //再将所有属于杨辉三角的元素初始化为1 for ( j = 0; j <= i; j++){ //很容易得出列数是 <= 行数的 arr[i][j] = 1; } for ( i = 2; i < n; i++) //从第三行开始一直到最后一行 for ( j = 1; j <= i - 1; j++) //从第二列开始一直到 <= 正在遍历的行数 - 1 arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1]; //计算杨辉三角中不为1的元素,即为正上方与左斜上方元素的和 for ( i = 0; i < n; i++){ for ( k = 0; k < n - 1 - i; k++) //打印空格,很容易找出每行打印空格书的规律 printf(" "); for ( j = 0; j <= i; j++) //打印数字 printf("%4d", arr[i][j]); printf("\n"); //每打印完一行换行 } return 0;}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~