求助下各位大佬
输出二维数组1 2 3 4 5 6
1 1 2 3 4 5
1 2 1 2 3 4
1 3 3 1 2 3
1 4 6 4 1 2
1 5 10 10 5 1
题目:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{ int a,i,j;
for(i=0;i<6;i++)
{
for(j=0;j<6;j++)
{
if(要填的地方)a=1;
else if(i<j)要填的地方
else a=要填的地方
cout<<setw(6)<<a;
}
cout<<'\n';
}
}
我的代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{ int a,i,j;
for(i=0;i<6;i++)
{
for(j=0;j<6;j++)
{
if((j=0) ||(i=j))a=1;
else if(i<j)a=j-i+1;
else a=i*(i-j);
cout<<setw(6)<<a;
}
cout<<'\n';
}
}
我感觉逻辑没错却一直打印0搞不懂了 if((j=0) ||(i=j))
这里是两个等于号 if((j==0) ||(i==j))
就是这样(接上楼) gandixiwang 发表于 2022-3-26 10:58
就是这样(接上楼)
可是我打印出来还不是我想要的qaq,不是题目要的那样 qiuyouzhi 发表于 2022-3-26 10:43
这里是两个等于号
可是我打印出来还不是我想要的qaq,不是题目要的那样 qiuyouzhi 发表于 2022-3-26 10:43
这里是两个等于号
改了还不是题目的要求,我不懂下半部分的数学逻辑{:10_266:} 本帖最后由 傻眼貓咪 于 2022-3-26 11:41 编辑
#include <iostream>
#include <iomanip>
using namespace std;
int main(){
int a, i, j;
for(i = 0; i < 6; i++){
for(j = 0; j < 6; j++){
if(!j || (i == j)) a = 1;
else if(i < j) a = j + 1 - i;
else a = a + a;
cout << setw(6) << a;
}
cout << '\n';
}
} 傻眼貓咪 发表于 2022-3-26 11:38
谢谢大佬
页:
[1]