输入两个2×2的数组,用户可以自定义矩阵内数字的大小,但是输入的数字必须在0-20之间,我这里用了一个if,但是太长了,有没有相对简短一些的方法可以做到?
for(i=0; i<2; i++)
{
for(j=0; j<2; j++)
{
if((a[i][j] < 0) || (a[i][j] > 20))
{
//错误处理
}
}
}
或者更简单一点把2x2的数组展开成一个4单元的一维数组,只需要一个for循环:
int *b = &a[0][0]
for(i=0; i<4; i++)
{
if((b[i]<0) || (b[i]>20))
{
//错误处理
}
}
{
for(j=0; j<2; j++)
{
if((a[i][j] < 0) || (a[i][j] > 20))
{
//错误处理
}
}
}
或者更简单一点把2x2的数组展开成一个4单元的一维数组,只需要一个for循环:
int *b = &a[0][0]
for(i=0; i<4; i++)
{
if((b[i]<0) || (b[i]>20))
{
//错误处理
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-05-03
用for循环