杨辉三角 可以不用二维数组的
#include <iostream> #include <iomanip> using namespace std; int main(int argc, char* args[]) { //便于窗体显示 system("mode con cols=128 lines=32"); int nLine; //cin >> nLine; //test nLine = 11; int* arrLineRecord = new int[nLine + 1](); const int nBaseYangValue = 1; //行数 for (int i = 1; i <= nLine; i++) { //格式化:) cout << right << setw(4 * (nLine - i + 1)) << " "; int indexCurrentNewValue = 0; //列数 for (int index = 1; index <= i; index++) { //取出上一行的 当前索引 值 int indexCurrentValue = arrLineRecord[index]; //取出上一行的 当前前一索引 值 int indexBeforeValue = arrLineRecord[index - 1]; //还原上一次 新的当前索引值 arrLineRecord[index - 1] = indexCurrentNewValue; //新的当前索引值 indexCurrentNewValue = indexBeforeValue + indexCurrentValue; //杨辉三角基值 indexCurrentNewValue = indexCurrentNewValue == 0 ? nBaseYangValue : indexCurrentNewValue; //输出新的当前索引值 cout << right << setw(8) << indexCurrentNewValue; //结束 if (index == i) arrLineRecord[index] = indexCurrentNewValue; } //换行 cout << endl; } delete[] arrLineRecord; system("pause"); return 0; }
![](https://files.cnblogs.com/files/wjshan0808/0.bmp)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步