C语言实例第04期,在控制台打印出著名的杨辉三角
技术干货第一时间送达!
往期回顾:
实例代码
//
// Created by 冲哥 on 2020/9/9.
//
#include "stdio.h"
int main(){
int a[8][8]={0};//初始化数组(本实例打印8行)
for (int i = 0; i < 8; i++) {//for循环定义每行的第一个数和对角线上的数,数值为1
a[i][i] = 1;
a[i][0] = 1;
}
for (int k = 2; k < 8; k++) {
for (int j = 1; j < k; j++) {//用两个for循环实现除对角线和每行第一个元素外其他元素的赋值
a[k][j] = a[k-1][j-1] + a[k-1][j];
}
}
for (int i = 0; i < 8; i++) {
for (int j = 0; j <= i; j++) {//两个for循环将数组a中的所有元素输出
printf("%d\t", a[i][j]);
}
printf("\n");
}
}
运行结果:
程序分析
首先要分析杨辉三角的特点,找出规律:
处理每行第一个数和对角线上的数都是1意外,其它的数就是前一行相邻的两数之和。找到这个规律,就可以很轻松的用for循环实现了。
往期精选