C++杨辉三角输出代码

怎么是java我要c++

#include<iostream>
using namespace std;
int main(){
int i,j;
int a[10][21];
for(i=0;i<10;i++){
for(j=0;j<21;j++){
a[i][j]=0;
}
}//完成数组的初始化
a[0][10]=1;
for(i=1;i<10;i++){
for(j=(10-i);j<=(10+i);j=j+2){//10+i=(10-i)+2*i+01-1
a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
}
for(i=0;i<10;i++){
cout<<"\t";
for(j=0;j<21;j++){
if(a[i][j]==0){
cout<<"  ";
}else{
cout<<a[i][j];
}
}
cout<<endl;
}
cout<<endl;
}

for(i=0;i<m;i++)   //按格式输出
{

for(int k=0;k<30-2*i;k++)//先输出空格

cout<<" ";

for(j=0;j<=i;j++)//再输出数字

cout<<setw(5)<<a[i][j];//setw(5)按固定5位输出,不足5位置空格

cout<<endl;//回车一行结束

}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-02-27
#include < iostream >
#include < iomanip >//对setw(6)起作用
using namespace std;

void main()
{
const int n = 11;//输出11列把这个改了就可以输出更多行了
int i,j,a[n][n];
for (i = 1; i < n; i++)
{
a[i][1] = 1;
a[i][i] = 1;
}
for (i = 3; i < n; i++)
{
for (j = 2;j <= i - 1;j++)
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
for (i = 1; i < n; i++)
{
for (j = 1; j <= i; j++)
cout << setw(6) << a[i][j] ;
cout << endl;
}
cout << endl;
}本回答被提问者和网友采纳
第2个回答  推荐于2016-05-12
//杨辉三角;

#include <iostream>
using namespace std;

int main()
{
int a,i,j;

cout<<"please input a:";
cin>>a;
if(cin.fail()) // 如果输入不是数字
return 0; // 释放内存

for(i=1;i<=a;i++){ // 外层循环 循环三角层数
int m = 1; //嵌套定义 这样的习惯不是很好 ,不建议
for(j = 1;j <= i;j ++){//内层循环 循环每层数字
//while(m<=i){
cout<<m;
m++;
}

int n = i-1;
while(n) //这里是输出 三角
{
cout<<n--;
}
cout<<endl;
}
return 0;
}
第3个回答  2010-11-11
http://blog.163.com/yangbo_vip/
我的博客里有 你可以参考参考
相似回答