题目如下:
#include<stdio.h>
int main()
{
int n,k,x,y=0;
scanf("%d%d%d",&n,&k,&x);
int i,j,m=1;
int a[n][n];
int b[n];
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
m=1;
for(i=0;i<n;i++)
{
if(i%2==1)
{
for(y=n-1;y>=0;y--)
{
if(y>m-1)
a[y][i]=a[y-m][i];
if(y<=m-1)
a[y][i]=x;
}
m++;
if(m>k)
m=1;
}
}
for(i=0;i<n;i++)
{
b[i]=0;
for(j=0;j<n;j++)
{
b[i]=b[i]+a[i][j];
}
}
for(i=0;i<n;i++)
{
printf("%d",b[i]);
if(i<n-1)
printf(" ");
}
return 0;
}
提交结果正确,满分通过,平移功能的实现为第二个for循环。
其中写的不好的地方,还请各位大佬多多指正^_^。