|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
如题,输出倒置的杨辉三角形
1 2 3 4 5 4 3 2 1
1 2 3 4 3 2 1
1 2 3 2 1
1 2 1
1
- // 倒置输出杨辉三角形
- #include<stdio.h>
- int main()
- {
- int n, a[10][10] = { 0 }, i, j, k;
- printf("请输入三角形的高:");
- while (scanf("%d", &n) != EOF && (n >= 1 && n <= 10))
- {
- for (i = 0;i<n;i++)
- {
- for (j = 0;j <= i;j++)
- {
- if (i == j || j == 0) //买一行的第一个是1加上对角线是1
- a[i][j] = 1;
- else
- a[i][j] = a[i - 1][j] + a[i - 1][j - 1];//其余的用肩膀上的两个数字相加
- }
- }
- printf("\n");
- //输出程序:(倒置的杨辉三角输出)
- for (i = 0;i<n;i++)
- {
- for (j = 0;j<i;j++) //输出空格
- printf(" "); //空格由少变多
- for (k = 0;k<n - i;k++)
- {
- printf("%3d", a[n - i - 1][k]); //倒着从数组里边取出数字输出
- printf(" ");
- }
- printf("\n");
- }
- printf("\n");
- }
- return 0;
- //正杨辉三角输出:
- for (i = 0;i<n;i++)
- {
- for (j = n - i;j>0;j--)
- printf(" ");
- for (k = 0;k <= i;k++)
- {
- printf("%3d", a[i][k]);
- printf(" ");
- }
- printf("\n");
- }
- }
复制代码
|
|