杨辉三角

#include <stdio.h> 
int main()
{
	int a[10][10] = {};
	int i;
	int j;
	//给对角线,首列元素赋值为1 
	for(i=0; i<10; i++){
		for(j=0; j<=i; j++){
			if(i==j || j==0){
				a[i][j] = 1;
			}else{
				a[i][j] = a[i-1][j] + a[i-1][j-1];	//网友的更佳 
			} 
		}
	}
	/*
	//内部元素的推导赋值
	for(i=2; i<10; i++){
		for(j=1; j<i; j++){
				a[i][j] = a[i-1][j] + a[i-1][j-1];
			} 
	}	
	*/	
	
	//输出二维数组,三角形部分数值 
	for(i=0; i<10; i++){
		for(j=0; j<=i; j++){
			printf("%-4d", a[i][j]);
		}
		printf("\n");
	}
	
	return 0; 
}
  1. 思路
    观察杨辉三角的规律
    1采取对应的数据结构:二维数组
    现在感觉数据结构真的强,有些问题,没有对应的数据结构根本解不出
    2给对应位置赋初值
    3根据已有值推导出剩余值
    用表达式表示出来
  2. 杨辉三角这题让我打开的了眼界,
    懂得了数据结构的妙用
    有些题没做过,是我怎么也解不出的————>所以要努力刷题
posted @   行至为成  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示