简单就不多说了。这是下三角形的杨辉三角。
// // main.cpp // yhsj // // Created by MadMarical on 15/11/27. // Copyright (c) 2015年 com. All rights reserved. // #include <iostream> using namespace std; const int maxn = 100; int angle[maxn][maxn]; int main(int argc, const char * argv[]) { int inp; cin>>inp; memset(angle, 0, sizeof(angle)); for (int i = 0; i != inp; ++ i) { angle[i][0] = 1; angle[i][i] = 1; } for (int i = 2; i != inp; ++ i) { for (int j = 1; j != inp; ++j) { angle[i][j] = angle[i - 1][j - 1] + angle[i - 1][j]; } } for (int i = 0; i != inp; ++ i) { for (int j = 0; j != inp; ++ j) { if (angle[i][j] != 0) { cout<<angle[i][j]<<" "; } } cout<<endl; } return 0; }
反思:
1.如何打印一个等腰的杨辉三角呢,借助C可以用。只用C++的话,输入输出的格式控制还有问题,但是我貌似在哪里看到过一个经典的解法,搞忘记了。回去得翻书了。
for(h=0;h<10;h++) { for(j=0;j<10-h;j++) { printf(" "); for(j=0;j<=h;j++) { printf("%3d ",i[h][j]); } } printf("\n"); }
2.下标的控制绝对要精准。。。
时间: 2024-10-07 02:10:13