#include <bits/stdc++.h>
using namespace std;
struct Matrix
{
int data;
int flag;
};
int main()
{
struct Matrix a[10][10];
int i,j,m,n,k;
while(scanf("%d%d",&m,&n)!=EOF)
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j].data);
if(a[i][j].data==0)
a[i][j].flag=1;
else
a[i][j].flag=0;
}
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
if(a[i][j].flag==1)
{
for(k=0;k<m;k++)
a[k][j].data=0;
for(k=0;k<n;k++)
a[i][k].data=0;
}
}
for(i=0;i<m;i++)
{
for(j=0;j<n-1;j++)
printf("%d ",a[i][j].data);
printf("%d\n",a[i][n-1].data);
}
}
}
若M*N阶矩阵中某个元素为0,则将其所在的行与列清零
最新推荐文章于 2022-05-23 08:35:28 发布