中易网

将二维数组a中的每个元素向右移一列,最后一列移到最左边,并按矩阵形式输出数组a. 我是这样做的

答案:3  悬赏:70  
解决时间 2021-01-15 13:29
  • 提问者网友:趣果有间
  • 2021-01-14 19:37
将二维数组a中的每个元素向右移一列,最后一列移到最左边,并按矩阵形式输出数组a. 我是这样做的
最佳答案
  • 二级知识专家网友:走死在岁月里
  • 2021-01-14 20:36
不用这么麻烦 ,我给你说下方法吧
定义一个数组a[3][3],一个变量 t
for(i=0;i<3;i++)
{ for(j=3;j>1;j--)
{
t=a[i][2]; //暂时存储下最后一列
a[i][j-1]=a[i][j-2] //从最后面开始,把前一个的移到后一个
}
a[i][0]=t; //把暂时存储的放回第一列
}
然后输出a[][]就可以了
全部回答
  • 1楼网友:枭雄戏美人
  • 2021-01-14 22:17
引用无名可用_狂汗的回答:
不用这么麻烦 ,我给你说下方法吧
定义一个数组a[3][3],一个变量 t
for(i=0;i<3;i++)
{ for(j=3;j>1;j--)
{
t=a[i][2]; //暂时存储下最后一列
a[i][j-1]=a[i][j-2] //从最后面开始,把前一个的移到后一个
}
a[i][0]=t; //把暂时存储的放回第一列
}
然后输出a[][]就可以了弱智答案 都是错的
  • 2楼网友:猎心人
  • 2021-01-14 21:22
一点小小的语法错误!
#include
void main()

{
int s[3][3],s1[3][3];
int i,j,k;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&s[i][j]);
}
for(i=0;i<3;i++)
{
k=0;
for(j=0;j<3;j++)
{
k=j+1;
if(j+1==3)
{
k=0;
}
s1[i][k]=s[i][j];
}
}
i=0,j=0;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d\t",s1[i][j]);
printf("\n");
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息