C语言——杨辉三角(最佳算法)

article/2025/9/20 20:20:32

目录

方法一:一维数组,节约内存

方法二:(最佳算法⭐)递归函数法,程序最简,占用内存最少

运行结果:


C语言输出杨辉三角形 等腰三角形

前言

杨辉三角形的特点:

  • 第一列和对角线上的元素都为1;
  • 除第一列和对角线上的元素之外,其他的元素的值均为前一行上的同列元素和前一列元素之和。

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
* * * * * *
下面就为大家介绍一下杨辉三角的2种最佳算法:

方法一:一维数组,节约内存

#include <stdio.h>
int main()
{int i, j, n, k, t; long Buf[21]={0,1};    //用于保存一行数据printf("请输入杨辉三角形的行数(1 ~ 20):");scanf("%d",&n);for( i = 1; i <= n; i++)	//输出n行{for( j = 0; j < n - i; j++)	//每行前面补空格,形成等腰三角图案	printf("   ");t = 0;for( j = 1; j <= i; j++)//计算并输出杨辉三角形{k = Buf[j];Buf[j] = t + k;		//每个数是上面两数之和(三角计算)t = k;printf("%6d", Buf[j]);	}printf("\n");}return 0;
}

方法二:(最佳算法⭐)递归函数法,程序最简,占用内存最少

#include <stdio.h>
long Tri(int r, int c) //杨辉三角算法函数	   
{return (c == 1 || c == r) ? 1 : Tri( r - 1, c - 1 ) + Tri( r - 1, c ); 
}	
int main() 
{int i, j, n; printf("请输入杨辉三角形的行数(1 ~ 20):");scanf("%d", &n);for( i = 1; i <= n; i++)	// 输出n行{for( j = 0; j < n - i; j++)		//每行前面补空格,显示成等腰三角形	printf("   ");for( j = 1; j <= i; j++)printf("%6d", Tri(i, j));	//计算并输出杨辉三角形	printf("\n");}return 0;
}

运行结果:

 


http://chatgpt.dhexx.cn/article/EH4fFwhX.shtml

相关文章

【C语言】四种方式使用C语言输出杨辉三角前10行

杨辉三角第一列和对角线为1&#xff0c;其他的计算公式为 a[i][j]a[i-1][j-1]a[i-1][j] 实现杨辉三角输出有多种方式&#xff0c;本文提供其中的四种实现方式。 方式一 #include "stdio.h" int main() {int a[10][10] {0};int i,j;for(i0; i<10; i){a[i][i]1;a…

【C语言】输出杨辉三角形 - 杨辉直角三角形(杨辉三角最佳算法) 输出杨辉三角前十行

C语言输出杨辉三角形 直角三角形 前言 如下可看出杨辉三角形的特点&#xff1a; 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 * * * * * *&#xff08;1&#xff09;第一列和对角线上的元素都为1&#xff1b; &#xff08;2&#xff09;除第一列和对角线上的元素之外…

Maven的安装步骤(保姆级安装教程)

一、安装本地Maven 选择你需要的maven版本下载&#xff1a;官网下载传送门 我使用的是3.6.1版本&#xff1a;maven-3.6.1-bin.zip 二、安装 把下载好的maven压缩包解压到一个没有中文&#xff0c;空格或其他特殊字符的文件夹&#xff0c;如&#xff1a; 三、配置环境变量…

Maven安装教程讲解

目录 一、下载安装JDK二、下载 Maven三、配置 Maven 环境变量四、配置 Maven 仓库地址五、配置 Maven 镜像六、配置 Maven JDK七、IDE配置 Maven八、IDE新建 Maven 项目九、IDE执行 Maven 命令 一、下载安装JDK 教程&#xff1a;https://blog.csdn.net/weixin_43888891/articl…

Maven下载及安装教程详解

进入Maven官网的下载页面&#xff1a;http://maven.apache.org/download.cgi#&#xff0c;如下图所示&#xff1a; 选择当前最新版本&#xff1a;"apache-maven-3.3.9-bin.zip"&#xff0c;下载到本地&#xff0c;解压缩到本地磁盘下。 --bin&#xff1a;保存Maven的…

Maven安装配置详细教程

文章目录 写在前面Maven下载安装配置环境变量配置settings.xmleclipse创建示例 写在前面 你还在为导入jar包而苦恼吗&#xff1f;常常找不到jar包&#xff0c;不知道从哪导入&#xff0c;就算导入了可能还会依赖冲突&#xff0c;目录杂乱&#xff0c;那么maven你值得拥有。 什么…

Maven官网下载安装详细教程

1、下载安装Maven 第一步 百度搜索Maven&#xff0c;进入官网 第二步 在右侧选择Download 第三步 进入Download页面&#xff0c;选择第三个下载 第四步 下载后解压&#xff0c;接着是配置环境 2、配置环境变量 M2_HOME Maven目录下的bin目录 MAVEN_HOME Maven目录 在系统…

Win系统下如何安装Maven教程

本文须知&#xff1a;安装maven环境之前要先安装java jdk环境&#xff08;没有安装java环境的可以先去看安装JAVA环境的教程&#xff09;Maven 3.3 require JDK 1.7 及以上。 第一步&#xff1a;下载maven&#xff08;本教程安装的是3.6.3&#xff09; 官方下载链接&#xff1a…

Maven的安装与配置教程(图文)

文章内容 一、Maven的下载二、Maven的本地安装三、Maven基础配置四、Idea配置Maven 一、Maven的下载 选择要下载的maven版本&#xff1a;官方地址传送门 二、Maven的本地安装 下载好后解压到电脑D盘目录下&#xff08;注&#xff1a;不要有中文目录和尽量别安装在c盘下&am…

Maven最新版的下载与安装教程(详细教程)

前言 本篇文章是基于win10系统下载安装Maven的教程。 一、下载Maven 进入Maven官网&#xff1a;https://maven.apache.org/download.cgi 选择 .zip文件下载&#xff0c;最新版本是3.8.5 二、安装Maven 1.解压 .zip文件 将 .zip文件解压到没有中文没有空格的路径下。例如…

非常详细的Maven安装与配置教程

Maven的安装与配置 1. 下载Maven2. 解压压缩包3. 添加 M2_HOME 和 MAVEN_HOME4. 添加到环境变量 - PATH路径下5. 验证Maven是否成功安装6. 修改本地仓库位置7. 添加Maven阿里云仓库&#xff0c;设置jdk版本为1.88. 在IDEA中修改Maven的地址9. 附录: setting.xml文件作为参考 1.…

Maven的安装与配置

1、在Windows上安装Maven 1.1 检查JDK安装 在安装Maven之前&#xff0c;首先要确认已经正确安装了JDK。Maven可以运行在JDK1.4及以上的版本上。打开Windows的命令行&#xff0c;运行如下的命令来检查Java安装情况&#xff1a; C:\Users\panjunbiao>echo %Java_Home% C:\U…

maven的下载与安装教程(超详细)

前言 本篇文章是基于win10系统下载安装Maven的教程。 一、 Maven介绍 1. 什么是Maven Maven是一个跨平台的项目管理工具。作为Apache组织的一个颇为成功的开源项目&#xff0c;其主要服务于基于Java平台的项目创建&#xff0c;依赖管理和项目信息管理。maven是Apache的顶级…

maven安装教程(超详细图解)

&#x1f4d6;本篇超级详细案例图解教学 Maven安装教程&#xff0c;图片点击可放大仔细看 Maven安装教程 1、前提 Maven需要Java环境,所以首先需要安装JDK,本教程默认已安装JDK1.8 2.解压文件 将maven文件夹复制到磁盘目录&#xff0c;本教程以安装到D:\maven目录为例 3.…

史上最详细的Maven安装教程

熟练的配置开发环境是每一个程序员必备的功课&#xff0c;俗话说&#xff1a;工欲善其事&#xff0c;必先利其器。 本文须知&#xff1a;安装maven环境之前要先安装java jdk环境&#xff08;没有安装java环境的可以先去看安装JAVA环境的教程&#xff09;Maven 3.3 require JDK …

elasticsearch(es)查询api,结果集排序/分页/范围查询;es查询某个字段不为null且不为空;分组聚合distinct

查询某个字段不等于空字符串,must_not反向查找&#xff0c;不等于匹配值的结果集 查询某个字段的值不等于空字符串 GET aunt/aunt_type/_search {"query": {"bool": {"must_not": [{"term": {"auntUserId": {"value&…

ElasticSearch系列(四)--springboot使用ElasticsearchRestTemplate整合ElasticSearch,实现文本高亮检索

前言 ElasticsearchRestTemplate是spring-data-elasticsearch项目中的一个类&#xff0c;和其他spring项目中的template类似。 网上的学习资料大都是基于ElasticsearchTemplate,但是ElasticsearchTemplate在未来的版本会被废除 预备知识 - 建立索引 因为是基于springboot,那就…

springBoot集成es(三)spring-data集成es与常用查询操作

接着上一篇博客&#xff0c;看下spring-data集成es的常用查询操作&#xff08;这里只写serviceImpl部分代码&#xff09;&#xff1a;ElasticsearchRepository使用QueryBuilder构造查询条件 &#xff1a;Iterable<T> search(QueryBuilder var1); 官网介绍&#xff1a;ht…

es的must_not的踩坑

文章目录 前言一、需求背景二、坑2.1 坑一2.2 坑二 总结 前言 记录下在公司做需求时must_not踩的坑 一、需求背景 要去做人才库的一个排除项&#xff1a;排除x个月面试不通过。实际上的dsl语句则对应的是must_not。且内部要包含两个元素&#xff1a;x个月、面试不通过&#x…

elasticsearch 父子文档使用must not 正确姿势

需求描述&#xff1a; 1、基于elasticsearch 父子文档进行子条件查询父文档 2、需要查询出子文档不存在的父文档 已知文档结构&#xff1a; 1、父文档clue_list 关联很多的子文档&#xff0c;我们用roam子文档做测试&#xff01; 2、roam子文档的结构 {"took" :…