数据结构示例之杨辉三角形
来源:互联网 发布:跳蛋淘宝 编辑:程序博客网 时间:2024/05/16 10:56
以下为输出“杨辉三角形”的简单示例:
1.用c语言实现的版本
#include<stdio.h>int c(int x,int y);void main() { int i,j,n=0; printf("Please input the value of n(n>=0):");/*控制输入正确的值以保证屏幕显示的图形正确*/scanf("%d",&n); for(i=0; i<=n; ++i) /*控制输出N+1行*/{ for(j=0; j<2*n-2*i; ++j) { printf(" "); /*控制输出第i行前面的空格*/} for(j=0; j<i+1; ++j){ printf("%5d",c(i,j)); /*输出第i行的第j个值*/} printf("\n"); }}/*求杨辉三角形中第x行第y列的值*/int c(int x,int y) { int z; if ((y==0)||(y==x)) {return 1; /*若为x行的第1或第x+1列,则输出1*/} z = c(x-1,y-1) + c(x-1,y); /*否则,其值为前一行中第y-1列与第y列值之和*/ return z;}
2.用C++实现的版本
#include<iostream>int c(int x,int y);void main() { int i,j,n=0; std::cout<<"Please input the value of n(n>=0):";/*控制输入正确的值以保证屏幕显示的图形正确*/ std::cin>>n; for(i=0; i<=n; ++i) /*控制输出N+1行*/ { for(j=0; j<2*n-2*i; ++j) { std::cout<<" "; /*控制输出第i行前面的空格*/} for(j=0; j<i+1; ++j){std::cout.width(5); std::cout<<c(i,j); /*输出第i行的第j个值*/}std::cout<<std::endl; }}int c(int x,int y) {/*求杨辉三角形中第x行第y列的值*/ int z; if ((y==0)||(y==x)) {return 1; /*若为x行的第1或第x+1列,则输出1*/ } z = c(x-1,y-1) + c(x-1,y); /*否则,其值为前一行中第y-1列与第y列值之和*/ return z;}
运行结果如下图所示:
0 0
- 数据结构示例之杨辉三角形
- 【ACM之旅】杨辉三角形 (Pascal三角形)
- 用队列解决数据结构经典问题:杨辉三角形问题。
- 数据结构示例之数组翻转
- 数据结构示例之阶乘计算
- 数据结构示例之复制字符串
- 数据结构示例之字符串替换
- 数据结构示例之字符串比较
- 数据结构示例之分割字符串
- 数据结构示例之连接字符串
- C++练习之 杨辉三角形
- 经典算法之杨辉三角形
- 【菜鸟之路】杨辉三角形
- 蓝桥杯练习题之杨辉三角形
- 数据结构示例之简单薪资管理系统
- 数据结构示例之矩阵行列和相等
- 数据结构示例之顺序数组的实现
- 数据结构示例之简单多项式相加
- android中drawable中下的selected和checked等中区别
- Spring4 的一些注解使用示例
- setClickable 和 setEnabled 的用法
- LeetCode 423. Reconstruct Original Digits from English 解题报告
- Git使用教程
- 数据结构示例之杨辉三角形
- 编译openssl
- 第九周 项目2-对称矩阵压缩存储的实现与应用(1)
- 从零开始学C++之类与对象:类声明、类作用域、前向声明、this指针、嵌套类、PIMPL 技法 等
- Android onActivityResult不执行
- 涂涂乐的详细实现之四--unity3d调用EmguCV实现图片识别
- Apache Kylin资料收集整理
- js事件委托机制
- 第一篇个人博客,仅为记录学习的历程,点点滴滴。