0分求助!

B2108 图像模糊处理

**1.第10行的循环"i++"改成"j++"** **2.第10行的"j<=n"改成"j<=m"** ~~这是两个基本问题···~~
by The_rain @ 2023-12-23 23:59:58


@[_Night_rain_](/user/593389) 你看,改成这样还有啥问题吗?(如下): ``` #include<bits/stdc++.h> using namespace std; int n,m,a[101][101]; int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) scanf("%d",&a[i][j]); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) if(i!=1&&j!=1&&i!=n&&j!=m) a[i][j]=round((0.0+a[i][j]+a[i-1][j]+a[i+1][j]+a[i][j-1]+a[i][j+1])/5); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++) printf("%d ",a[i][j]); printf("\n"); } return 0; } ```
by xibaby @ 2023-12-24 00:46:36


**还有一点:你还要定义个二维数组b拷贝a数组,平均值计算用b里的数。代码如下:** ```cpp #include<bits/stdc++.h> using namespace std; long long n,m,a[101][101],b[101][101]; int main(){ cin>>n>>m; for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){ cin>>a[i][j]; b[i][j]=a[i][j]; } for(int i=2;i<n;i++)for(int j=2;j<m;j++) a[i][j]=round((b[i][j]+b[i-1][j]+b[i+1][j]+b[i][j-1]+b[i][j+1])/5.0); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++)printf("%d ",a[i][j]); cout<<endl; } return 0; } ```
by The_rain @ 2023-12-24 13:29:42


@[_Night_rain_](/user/593389) 非常感谢!(同时我也很抱歉!因为最近期末考试,现在才看到。)
by xibaby @ 2024-01-22 22:13:55


@[xibaby](/user/995569) **都一样,没关系**
by The_rain @ 2024-01-23 08:06:11


|