21xrx.com
2024-06-03 04:04:06 Monday
登录
文章检索 我的文章 写文章
C++语言编写杨辉三角的心得体会
2023-07-05 05:14:10 深夜i     --     --
C++ Yang Hui's Triangle Coding Experience Key Learnings Programming Techniques

杨辉三角是一种数学图形,在程序设计领域中也是一种非常经典的题目。其主要的特点是每一行的数字都是由上一行相邻的两个数相加而得到的。在C++语言中,我们可以通过循环实现杨辉三角的生成。

首先,我们需要定义一个二维数组用来存储杨辉三角的数据。我们可以使用动态申请内存的方式来实现数组的定义。然后,我们可以通过一个for循环来逐层生成杨辉三角的数据。具体实现如下:


int main(){

  int n;

  cout<<"请输入杨辉三角的行数:";

  cin>>n;

  int **triangle = new int*[n];

  for(int i = 0; i < n; i++){

    triangle[i] = new int[i+1];

  }

  for(int i = 0; i < n; i++){

    for(int j = 0; j <= i; j++){

      if(j==0||j==i){

        triangle[i][j] = 1;

      }else{

        triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];

      }

      cout<<triangle[i][j]<<" ";

    }

    cout<<endl;

  }

  for(int i = 0; i < n; i++){

    delete[]triangle[i];

  }

  delete[]triangle;

  return 0;

}

这段代码中,我们定义了一个n变量用来存储要生成的杨辉三角的行数。然后,我们使用动态数组的方式来定义一个二维数组triangle,其有n行。

接着,我们使用两个for循环来生成每一行的数据。对于第一行和最后一行,其所有的数字都为1,因此我们直接将其赋值为1。而对于其他行的数字,则是由上一行的相邻两个数字相加得到的。

最后,我们通过一个for循环来释放动态申请的内存,避免内存泄漏的问题。

总的来说,通过编写杨辉三角的程序,我们可以更好的理解C++中数组的定义和运用。同时,也可以在算法和程序设计上锻炼自己的能力,为今后的编程工作打下坚实的基础。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复