(第十列)C语言基础练习:打印杨辉三角,文字解释太烦,直接代码解析。

简介: (第十列)C语言基础练习:打印杨辉三角,文字解释太烦,直接代码解析。

题目:打印杨辉三角前十行,如下:

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


代码见真知:

定义:

  int arry[10][10];  //首先定义二维数组,有行有列
  int i,j;

1是比较明显的规律,首先解决:

    //由题目可知,1所在的行和列是有规律的
  for(i=0;i<10;i++)
  {
    arry[i][0]=1;  //由题目可知第一例全为1
    arry[i][i]=1;  //由题可知第i行i列也全是1
  }

中间部分,找规律:

  for(i=2;i<10;i++)  //行循环,由于1已结解决,所以直接从第三行开始
  {
    for(j=1;j<i;j++)  //第一例全为1,已解决,直接从第二列开始
    {
            //中间的某一个数等于它上一行,它所在的一列的数与前一列的数之和
      arry[i][j]=arry[i-1][j]+arry[i-1][j-1];
    } 
  }

最后输出即可。


完整代码:

#include<stdio.h>
int main()
{
  int arry[10][10];
  int i,j;
  for(i=0;i<10;i++)
  {
    arry[i][0]=1;
    arry[i][i]=1;
  }
  for(i=2;i<10;i++)
  {
    for(j=1;j<i;j++)
    {
      arry[i][j]=arry[i-1][j]+arry[i-1][j-1];
    }   
  }
  for(i=0;i<10;i++)
  {
    for(j=0;j<=i;j++){
      printf("%d  ",arry[i][j]);
    }
    printf("\n");
  }
  return 0;
}



目录
打赏
0
0
0
0
0
分享
相关文章
【c语言】运算符汇总(万字解析)
今天博主跟大家分享了c语言中各种操作符的功能、使用方法以及优先级和结合性,并且与大家深入探讨了表达式求值的两个重要规则--算数转换和整形提升。学习这些知识对我们的C语言和C++学习都有着极大的帮助。
374 2
C语言之考勤模拟系统平台(千行代码)
C语言之考勤模拟系统平台(千行代码)
143 4
【C语言】深入解析C语言结构体:定义、声明与高级应用实践
通过根据需求合理选择结构体定义和声明的放置位置,并灵活结合动态内存分配、内存优化和数据结构设计,可以显著提高代码的可维护性和运行效率。在实际开发中,建议遵循以下原则: - **模块化设计**:尽可能封装实现细节,减少模块间的耦合。 - **内存管理**:明确动态分配与释放的责任,防止资源泄漏。 - **优化顺序**:合理排列结构体成员以减少内存占用。
531 14
【C语言】数据类型全解析:编程效率提升的秘诀
在C语言中,合理选择和使用数据类型是编程的关键。通过深入理解基本数据类型和派生数据类型,掌握类型限定符和扩展技巧,可以编写出高效、稳定、可维护的代码。无论是在普通应用还是嵌入式系统中,数据类型的合理使用都能显著提升程序的性能和可靠性。
290 8
C 语言递归算法:以简洁代码驾驭复杂逻辑
C语言递归算法简介:通过简洁的代码实现复杂的逻辑处理,递归函数自我调用解决分层问题,高效而优雅。适用于树形结构遍历、数学计算等领域。
【C语言】深入浅出:C语言链表的全面解析
链表是一种重要的基础数据结构,适用于频繁的插入和删除操作。通过本篇详细讲解了单链表、双向链表和循环链表的概念和实现,以及各类常用操作的示例代码。掌握链表的使用对于理解更复杂的数据结构和算法具有重要意义。
2251 6
【C语言】进制转换无难事:二进制、十进制、八进制与十六进制的全解析与实例
进制转换是计算机编程中常见的操作。在C语言中,了解如何在不同进制之间转换数据对于处理和显示数据非常重要。本文将详细介绍如何在二进制、十进制、八进制和十六进制之间进行转换。
390 5
|
7月前
|
【C语言】断言函数 -《深入解析C语言调试利器 !》
断言(assert)是一种调试工具,用于在程序运行时检查某些条件是否成立。如果条件不成立,断言会触发错误,并通常会终止程序的执行。断言有助于在开发和测试阶段捕捉逻辑错误。
145 5
【C语言】《回调函数》详细解析
回调函数是指一个通过函数指针调用的函数。它允许将一个函数作为参数传递给另一个函数,并在特定事件发生时执行。这种技术使得编程更加灵活,可以动态决定在何时调用哪个函数。
250 1

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等