为什么这句话:
int a = 7, b = 8, c = 0;
c = b > a? a > b? a++: b++: a++ ? b++:a--;
cout << c;
Run Code Online (Sandbox Code Playgroud)
不等于:
int a = 7, b = 8, c = 0;
c = (b > a? (a > b? a++: b++): a++)? b++: a--;
cout << c;
Run Code Online (Sandbox Code Playgroud)
并且等于:
int a = 7, b = 8, c = 0;
c = b > a? (a > b? a++: b++): (a++? b++: a--);
cout << …Run Code Online (Sandbox Code Playgroud) 当以下程序有以下输入时(从cin读取):
1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1
Run Code Online (Sandbox Code Playgroud)
输出令人惊讶:
1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1
#include<iostream>
using namespace std;
int main()
{
int arey[3][3];
int i,j;
for(j=0;j<=3;j++)
{
for(i=0;i<=3;i++)
{
cin>>arey[j][i];
}
}
arey[0][0]=1;
arey[3][3]=1;
i=0,j=0;
for(j=0;j<=3;j++)
{
for(i=0;i<=3;i++)
{
cout<<arey[j][i];
}
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
有人可以解释我应该改变什么来获得与输入相同的输出?