| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6102 人关注过本帖
标题:请写个矩阵旋转程序
只看楼主 加入收藏
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
清扬不必担心。这是我俩的个人恩怨,该回答你们的问题都会回答。
我和TonyDeng的矛盾由来已久,之前每次交锋都来个一招半式就收手了,这什么时候是个头。
这次索性我想把问题摊开,宣泄一下情绪。情绪发泄完了才能回归理性,才能静下心来考虑到底是化干戈为玉帛,还是从此井水不犯河水。总归该有个了结了。

致TonyDeng。
上面的话有点多,但我还是希望你能耐心的看完,以了解我当前对你的真实看法。
带着情绪说的话,言语难免有失分寸,我先提前道个歉好了。我骂够了,当然不能不让你痛快一下。
等你发泄够了,我们最好正式地正面地聊一聊。好好地全面地认识了解一下对方。以进一步确定我们的相处方式。
你不是说我心胸狭隘么,想必你的心胸比我宽广。既然我都有这样的想法,你应该不会小肚鸡肠的拒绝吧?

重剑无锋,大巧不工
2012-02-11 11:02
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
回复 40楼 有容就大
呵呵,对不住有容了,把你的讨论贴变成了吵架贴。之后我希望各位暂时别跟贴,我在等着Tony的暴风雨。等这一切过去后,无论是我还是他,我想都会给你的问题一个满意的答复稍安勿躁

重剑无锋,大巧不工
2012-02-11 11:08
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
小弟不才写了一个 给点分吧!!!
程序代码:
#include "stdio.h"
#define M 4
#define N 4
int main(void)
{
    int a[M][N],b[M][N];
    int i,j,temp;
     printf("Input number:\n");
     for(i = 0;i < M;i++)
      for(j = 0;j < N;j++)
       {
         scanf("%d",&a[i][j]);
       }
    for(i = 0;i < M;i++)
      for(j = 0;j < N;j++)
        {
          b[i][j] = a[j][M-1-i];    
        }
    printf(" 原矩阵:\n"); 
    for(i = 0;i < M;i++)
      {
      for(j = 0;j < N;j++)
       printf("%d ",a[i][j]);
       printf("\n");
      }
     
    printf("顺时针旋转90度后:\n");
    for(i = 0;i < N;i++)
     {
     for(j = 0;j < M;j++)
     printf("%d ",b[i][j]);
     printf("\n");
     }
     return 0;
     
}
应该不太臃肿吧  呵呵
2012-02-11 14:40
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
忘了说了 我上面的是 逆时针 呵呵   顺的差不多啦
2012-02-11 14:42
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:30 
顺时针90度:
程序代码:
#include "stdio.h"
#define M 3
#define N 4
int main(void)
{
    int a[M][N],b[M][N];
    int i,j;
     printf("Input number:\n");
     for(i = 0;i < M;i++)
      for(j = 0;j < N;j++)
         scanf("%d",&a[i][j]);
      
    /******顺时针90度旋转程序*******/ 
    for(i = 0;i < M;i++)
     {
      for(j = 0;j < N;j++)
       {
             printf("%d ",a[i][j]);//输出原矩阵
          b[j][M-1-i] = a[i][j];    
       }
      printf("\n");
     }
    /*******************************/   
     
    printf("顺时针旋转90度后:\n");
    for(i = 0;i < N;i++)
     {
     for(j = 0;j < M;j++)
     printf("%d ",b[i][j]);
     printf("\n");
     }
    return 0; 
}
2012-02-11 15:32
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 45楼 C_596322153
不错 ,很好。

梅尚程荀
马谭杨奚







                                                       
2012-02-11 15:34
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
  不是太好 我再看看  我把M N改了下好像不行了  你试试
2012-02-11 15:43
C_596322153
Rank: 6Rank: 6
来 自:徽州
等 级:侠之大者
帖 子:182
专家分:466
注 册:2012-1-10
收藏
得分:0 
有点晕  我那个 只能用于 M 《= N 的情况  当M 》N 时也只有前N 列 正确 求前辈们 指点了
2012-02-11 16:37
Devil_W
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:9
帖 子:1160
专家分:1797
注 册:2009-9-14
收藏
得分:0 
以下是引用beyondyf在2012-2-11 11:08:16的发言:

呵呵,对不住有容了,把你的讨论贴变成了吵架贴。之后我希望各位暂时别跟贴,我在等着Tony的暴风雨。等这一切过去后,无论是我还是他,我想都会给你的问题一个满意的答复稍安勿躁



我看他也不顺眼。。。

只是懒得跟他吵,丢失身份。
2012-02-11 18:54
zxd675816777
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:252
专家分:631
注 册:2012-2-3
收藏
得分:0 
额,写了一个不好的程序。学习中。。。
//要输入一个非数字才能结束该循环,有局限性;可以事先告知用户怎么退出循环。有时间的时候写成函数模块。
#include<stdio.h>
#include<math.h>
#define M 100
int main(void)
{
int c,d,i,n,j=0,k,l,h,e;
int a[M],b[M];
printf("enter the matrix(n*n),enter 'q' to quit\n");//要输入一个字符q才可以结束输入循环,但是又局限性。
while((scanf("%d",&a[j]))!=0)
{
j++;
}
n=sqrt(j);
printf("the origin matrix is:\n");
for(i=0;i<=j-1;i++)
{
if(i%n==0&&i!=0)
printf("\n");
printf("%4d",a[i]);
}
printf("\n");

//这个是进行矩阵旋转的。
printf("the rotate matrix is:\n");
for(k=0;k<=j-1;k++)
{l=k/n;
h=k%n;
b[h*n+n-1-l]=a[k];
}
for(e=0;e<=j-1;e++)
{
if(e%n==0&&e!=0)
printf("\n");
printf("%4d",b[e]);
}
printf("\n");
return 0;
}

数学好难!
2012-02-13 23:01
快速回复:请写个矩阵旋转程序
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025647 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved