C语言小程序 杨辉三角示例代码

 更新时间:2013年07月22日 11:29:18   作者:  
输入要显示的杨辉三角的行数,会打印出金字塔型的杨辉三角,不过行数太多的话,效果不太好,可以再调整一下格式控制
复制代码 代码如下:

#include <stdio.h>
#include <stdlib.h>
int main()
{
 int i,j,k;
 int line;
 int *prev, *next;
 printf("输入要查看杨辉三角的行数(大于2):");
 scanf("%d",&line);
 if(line < 2)
 {
  printf("行数小于2,Goodbye!\n");
  exit(1);
 }
 for(i=1; i<=line; i++)   //前两行的打印
  printf("   ");
 printf("%6d\n",1);
 for(i=1; i<=line-1; i++)
  printf("   ");
 printf("%6d%6d\n",1,1);
 prev = malloc(2*sizeof(int));
 prev[0] = 1;
 prev[1] = 1;
 for(i=3; i<=line; i++)   //从第三行开始打印
 {
  next = malloc(i*sizeof(int));
  next[0] = 1;
  next[i-1] = 1;
  for(j=line; j>=i; j--)    //外部空格
  {
   printf("   ");
  }
  printf("%6d",1);
  for(k=2; k<i; k++)    //数字
  {
   next[k-1] = prev[k-2] + prev[k-1];
   printf("%6d",next[k-1]);
  }
    }
  printf("%6d\n",1);
  free(prev);
  prev = next;
 }
 free(next);
 return 0;
}

相关文章

  • C/C++堆区专篇精讲

    C/C++堆区专篇精讲

    一直以来总是对这个问题的认识比较朦胧,我相信很多朋友也是这样的,总是听到内存一会在栈上分配,一会又在堆上分配,那么它们之间到底是怎么的区别呢,让我们一起来看看
    2022-10-10
  • C/C++ 避免数组越界的方法

    C/C++ 避免数组越界的方法

    这篇文章主要介绍了C/C++ 避免数组越界的方法,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • C++简明分析inline函数的使用

    C++简明分析inline函数的使用

    inline是C++关键字,在函数声明或定义中,函数返回类型前加上关键字inline,即可以把函数指定为内联函数。这样可以解决一些频繁调用的函数大量消耗栈空间(栈内存)的问题
    2022-07-07
  • C语言中改变目录的相关操作函数详解

    C语言中改变目录的相关操作函数详解

    这篇文章主要介绍了C语言中改变目录的相关操作函数详解,分别是fchdir()函数和rewinddir()函数的使用方法,需要的朋友可以参考下
    2015-09-09
  • C语言宏定义结合全局变量的方法实现单片机串口透传模式

    C语言宏定义结合全局变量的方法实现单片机串口透传模式

    今天小编就为大家分享一篇关于C语言宏定义结合全局变量的方法实现单片机串口透传模式,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 对比分析C语言中的gcvt()和ecvt()以及fcvt()函数

    对比分析C语言中的gcvt()和ecvt()以及fcvt()函数

    这篇文章主要介绍了对比分析C语言中的gcvt和ecvt以及fcvt函数,都是将数字转化为字符串,注意其之间的功能区别,需要的朋友可以参考下
    2015-08-08
  • C语言实现酒店客房管理系统课程设计

    C语言实现酒店客房管理系统课程设计

    这篇文章主要为大家详细介绍了C语言实现酒店客房管理系统课程设计,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 简单掌握C++中的函数模板

    简单掌握C++中的函数模板

    这篇文章主要介绍了C++中的函数模板,包括函数模板的声明和生成以及异常处理等基本知识,需要的朋友可以参考下
    2016-04-04
  • 基于OpenCV和C++ 实现图片旋转

    基于OpenCV和C++ 实现图片旋转

    这篇文章主要介绍了基于OpenCV和C++ 实现图片旋转,帮助大家更好的利用c++处理图片,感兴趣的朋友可以了解下
    2020-12-12
  • Qt中TableView与TreeView组件联动实现

    Qt中TableView与TreeView组件联动实现

    本文主要介绍了Qt中TableView与TreeView组件联动实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-12-12

最新评论