网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

用C语言打印杨辉三角-创新互联

杨辉三角:想要打印杨辉三角,首先创建一个数组arr[10][10];

成都地区优秀IDC服务器托管提供商(创新互联建站).为客户提供专业的联通机房服务器托管,四川各地服务器托管,联通机房服务器托管、多线服务器托管.托管咨询专线:13518219792

杨辉三角放到左边对齐就应该是这样的

我们可以知道第0列应该全是1;当行和列相等的时候应该也是1所有就有

arr[i][0] = 1;

if (i==j)
         {
             arr[i][j] = 1;
         }

并且我们只需要这个数组得下半部分上面的不要所以就有 行大于列也就是

void print(int arr[][10])
{
 for (int i = 0; i< 10; i++)
 {
     for (int j = 0; j< 10; j++)
     {
         if (i >= j)
         {
             
             printf("%d ", arr[i][j]);
         }
     }
     printf("\n");
 }
}

最后写出 打印数组下半部分代码 , 这个代码使这个数组得第一列为1 ,行列相等的时候也为1 

void print(int arr[][10])
{
	for (int i = 0; i< 10; i++)
	{
		for (int j = 0; j< 10; j++)
		{
			if (i >= j)
			{
				
				printf("%d ", arr[i][j]);
			}
		}
		printf("\n");
	}
}
int main()
{
	int arr[10][10] = { 0 };
	for (int i = 0; i< 10; i++)
	{
		int j = 0;
		arr[i][0] = 1;
		for (j = 0; j< 10; j++)
		{
			if (i==j)
			{
				arr[i][j] = 1;
			}
			
		}
	}
	print(arr);
}

通过观察 我们知道从第2行开始有 arr[i][j] = arr[i-1][j] + arr[i-1][j-1];

最后得代码是

# includevoid print(int arr[][10])
{
	for (int i = 0; i< 10; i++)
	{
		for (int j = 0; j< 10; j++)
		{
			if (i >= j)
			{
				
				printf("%d ", arr[i][j]);
			}
		}
		printf("\n");
	}
}
int main()
{
	int arr[10][10] = { 0 };
	for (int i = 0; i< 10; i++)
	{
		int j = 0;
		arr[i][0] = 1;
		for (j = 0; j< 10; j++)
		{
			if (i==j)
			{
				arr[i][j] = 1;
			}
			if (i >=2 && j >0 && j<= i)
			{
				arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
			}
		}
	}
	print(arr);
}

打印出来就是这个样子

这个代码还是有些地方做的不好 比如书代码没有对齐等问题;

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站题目:用C语言打印杨辉三角-创新互联
文章源于:http://bjjierui.cn/article/dpiihh.html

其他资讯