| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 706 人关注过本帖
标题:求数组转方阵的代码
取消只看楼主 加入收藏
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:2 
求数组转方阵的代码
如下的方阵:
 1  2  3  4
 5  6  7  8
 9 10 11 12
13 14 15 16

顺时针旋转如下:

13  9  5  1
14 10  6  2
15 11  7  3
16 12  8  4

如何编程,是高手的,请亮剑。
2013-12-12 11:48
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 3楼 love云彩
代码已编出如下:

#include <stdio.h> //转方阵,即将一个四维数组的方阵顺时针旋转90度
void main()
{
    int i,j,n;
    int x[4][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
    int y[4][4];
    printf("原四维数组的方阵如下:\n");
    for(i=0;i<=3;i++)
        for(j=0;j<=3;j++)
        {
            printf("%4d",x[i][j]);
            if(j==3) printf("\n");
        }
    for(i=0;i<=3;i++)
        for(j=0;j<=3;j++)
        {
            if(i==0) y[j][3]=x[i][j];
            if(i==1) y[j][2]=x[i][j];
            if(i==2) y[j][1]=x[i][j];
            if(i==3) y[j][0]=x[i][j];
        }
    printf("顺时针旋转90度,该数组变换如下:\n");
        for(i=0;i<=3;i++)
        for(j=0;j<=3;j++)
        {
            printf("%4d",y[i][j]);
            if(j==3) printf("\n");
        }   
}
 
本人只想领略高手的更简洁高效的算法,没别的意思。
2013-12-12 14:15
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 4楼 谁与争疯
如回3楼!
2013-12-12 14:15
快速回复:求数组转方阵的代码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018992 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved