搜索
简帛阁>技术文章>C语言用递归函数打印杨辉三角形

C语言用递归函数打印杨辉三角形

最近周末在参加嵌入式培训,才学到C语言函数部分,,用VS 2018软件写的。收集整理如下

/*

3.	打印出杨辉三角形(要求打印出10行如下图)
1
1  	1
1	2  	1
1  	3  	3  	1
1  	4  	6  	4  	1
……………….

*/


#pragma warning(disable:4996)
#include <stdio.h>

int yhsj(int n,int m);
int putdata(int n, int m);

int main()
{
	int n =10; //n行
	int m =10; //m列
	
	putdata(n, m);
	return 0;
}

int putdata(int n, int m)
{
	int i, j;
	for (i = 1; i <= n; i++)
	{
		for (j = 1; j <= m; j++)
		{
			if (j > i)  //如果列大于行,打印换行并中断函数
			{
				printf("\n");
				break;
			}
			printf("%-4d", yhsj(i, j)); //打印某行某列的值

		}
	}
	return 0;
}

int yhsj(int n,int m)    //单独返回某行某列的值
{


	int rec;
	if ((m == 1) || (n == 2 && m == 2) || (n == m)) //第一列,第二行,还有行列相同的时候都为1.
	{
		return 1;
	}

	else //if(m < n)     //列小于行才有数字。
	{

		rec = yhsj(n - 1, m - 1) + yhsj(n - 1, m);
		return rec;

	}
}

/*

1
1   1
1   2   1
1   3   3   1
1   4   6   4   1
1   5   10  10  5   1
1   6   15  20  15  6   1
1   7   21  35  35  21  7   1
1   8   28  56  70  56  28  8   1
1   9   36  84  126 126 84  36  9   1   请按任意键继续. . .
*/

 

最近周末在参加嵌入式培训,才学到C语言函数部分,,VS2018软件写的。收集整理如下/*3打印杨辉三角形(要求打印出10行如下图)111121133114641………………*/pragmawar
C语言打印杨辉三角形方法一杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和。这就是我们C语言杨辉三角的关键之一。先定义一个二维数组:a[N][N],略大于要打印的行数。再令两边的数
首先我们先了解一下什么是杨辉三角形,下面是一张图片,我们可以从中发现一个规律,每一个数字都是它上方两个数字的和。问题分析:由上可知杨辉三角在每一个数字都是它上方两个数字的和,所以这个便是这道题的关键
原标题:C语言打印杨辉三角代码及解析杨辉三角是我们从初中就知道的,现在,让我们C语言将它在计算机上显示出来。在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和。这就
杨辉三角是我们从初中就知道的,现在,让我们C语言将它在计算机上显示出来。在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和。这就是我们C语言杨辉三角的关键之一。
使用队列打印杨辉三角形1主要功能描述:使用队列的入队,出队,获得头结点和判断是否为空等等,来实现对杨辉三角形打印,第i行上的元素要由第i1行中的元素来生成。2设计分析:由杨辉三角形的特点,即每一行
根据杨辉三角的特点,可以使用递归方法。第n行有n个元素,当n>2时,第m元素的值为其上一行的第m1个元素的值与第m个元素之和。每行的第一个和最后一个元素的值为1;设第x行的第y个元素为c(x,y),
今天小编给大家带来的教程是:打印杨辉三角形的实现方法。在这篇教程中,小编会教大家打印出一个杨辉三角形,在这个三角形中会打印出十行的数据。如果大家有兴趣的话,那就跟着小编一起来学习一下吧。何为杨辉三角
录1题目描述2解题思路3动图演示4代码实现Step1Step2居中显示5完整代码6特性总结1题目描述杨辉三角形解题之前,我们先来了解一下杨辉三角形到底是什么?杨辉三角形,又称帕斯卡三角形、贾宪三角形
问题描述:请使用C语言编程打印杨辉三角形,至少打印出10行。11112113311464115101051问题分析:使用联合数组与for循环控制。程序源码:include<stdioh>