杨辉三角等腰输出

 1 /*以等腰三角形的形式输出10行的杨辉三角,如下:
 2                            1
 3                         1     1
 4                      1     2     1
 5                   1     3     3     1
 6                1     4     6     4     1
 7             1     5     10    10    5     1
 8          1     6     15    20    15    6     1
 9       1     7     21    35    35    21    7     1
10    1     8     28    56    70    56    28    8     1
11 1     9     36    84    126   126   84    36    9     1
12 */
13 #include <stdio.h>
14
15 int main()
16 {
17     int a[10][10] = {0};
18     int i,j,k;
19     for (i=0;i<10;i++ )
20         a[i][0]=1; //第1列赋初值
21     for (i=1;i<10;i++ )
22         for ( j=1;j<i+1;j++ )
23             a[i][j]=a[i-1][j-1]+a[i-1][j]; //其他列计算
24
25     //以等腰三角形的格式 输出
26     for (i=0;i<10;i++ ) //10行
27     {
28         for ( j=0;j<9-i;j++ )
29             printf("   "); //每行前面的空格,以3个空格为单位输出
30         for ( j=0;j<i+1;j++ )
31             printf("%-3d   ",a[i][j]); //输出左对齐,后面再跟3个空格
32         printf("\n"); //每行换行
33     }
34     getchar();
35 }
时间: 2024-08-28 10:56:12

杨辉三角等腰输出的相关文章

Java小案例——使用双重for循环实现杨辉三角的输出

杨辉三角特点分析(如图): *第i行有i列 *每一行的第一个数都为1 *每一行的最后一个数都为1 *当前数(非第一列和最后一列)等于上面一个数+上面一个数的左边的数 实现代码: /** * 要求:输出杨辉三角 * @author Administration * */ public class YangHuiTest { public static void main(String[] args) { //创建二维数组,定义了行,没有定义列 int[][] arr = new int[10][]

js杨辉三角控制台输出

function Yang(line){ var arr=new Array() for(var i=1;i<=line;i++){ if(arr[i-1]==undefined){arr[i-1]=[];} if(i==1){arr[0]=[i]}else if(i==2){ arr[i-1][0]=1; arr[i-1][i-1]=1; }else{ arr[i-1][0]=1; arr[i-1][i-1]=1; for(var j=1;j<i-1;j++){ arr[i-1][j]=ar

输出可爱的”杨辉三角”

通过控制输出的格式,实现1.左下杨辉三角(普通型)2.左上三角,3.金字塔形杨辉三角的输出. #include <stdio.h> #include <stdlib.h> int main() { //普通杨辉三角 int i,j,a[10][10]; for(i=0;i<10;i++){ for(j=0;j<=i;j++){ if(j==0 || j==i){ a[i][j]=1; //printf("%4d",a[i][j]); }else{ a

列表生成式的复习以及生成器的练习, 杨辉三角实例(非常巧妙)

列表生成式 print('昨日复习--------------------') d = {'a':1, 'b':2, 'c':3} for key in d: print(key) for value in d.values(): print(value) for k, v in d.items(): print(k, v) for ch in 'ABC': print(ch) from collections import Iterable t = isinstance(123, Iterab

[py]函数中yield多次返回,延迟计算特性-杨辉三角

搞清什么是杨辉三角 每行是一个数组, 第一行: [1] 第二行: [1, 1] 第三行: [1, 2, 2, 1] ... 画的好看点就是,不过没啥卵用 1 / 1 1 / \ / 1 2 1 / \ / \ / 1 3 3 1 / \ / \ / \ / 1 4 6 4 1 / \ / \ / \ / \ / 1 5 10 10 5 1 打印杨辉三角 首先要解决一个函数,多次返回值, 我们知道py函数返回多个值,没啥问题. 但是要多次返回值呢?需要借助生成器来完成, 生成器的好处是可以保留现场

java例题_33 等腰输出杨辉三角

1 /*33 [程序 33 杨辉三角] 2 题目:打印出杨辉三角形(要求打印出 10 行如下图) 3 程序分析: 4 1 5 1 1 6 1 2 1 7 1 3 3 1 8 1 4 6 4 1 9 1 5 10 10 5 1 10 */ 11 12 /*分析: 13 * ====================== 14 * 杨辉三角特点: 15 * 1.每个数等于它上方两数之和. 16 * 2.每行数字左右对称,由1开始逐渐变大. 17 * 3.第n行的数字有n项. 18 * ========

C输出帕斯卡三角(杨辉三角)递归实现

1 /*帕斯卡三角形(杨辉三角)*/ 2 int Recursive_Pascal_Triangle( int i, int j ) 3 { 4 if( (j == 0) || (i == j) ) 5 return 1; 6 else{ 7 return Recursive_Pascal_Triangle(i-1,j-1) + Recursive_Pascal_Triangle( i-1, j ); 8 } 9 } 10 11 /*输出三角形*/ 12 void display_triangl

C语言实现在屏幕上输出杨辉三角

★在屏幕上打印杨辉三角 #include<stdio.h> int main() { int i = 0, j = 0, num = 0,k = 0; printf("请输入要输出的杨辉三角的行数:"); scanf("%d", &num); for (i = 1; i <= num; i++) { k = 1;         //每行须以1开头,所以将K定义在第二层循环之外 for (j = 1; j <= i; j++) { p

输出杨辉三角

输出下列图形(空格用_表示) ____* ___*** __***** _******* ******* 分析 行数   空格数  星星数   一共有多数 一        4         1             5 二        3         3             6 三        2         5             7 四        1         7            8 五        0          9