| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 15156 人关注过本帖, 1 人收藏
标题:蛇形矩阵
只看楼主 加入收藏
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
回复 26楼 浅水无殇
给你简单翻译下
程序代码:
#include <stdio.h>
void foo(int n)
{
    for(int r = 0;r < n;++r)
    {
        for(int c = 0;c < n - r;++c)
        {
            printf( "%d", 1+(c+r)*(c+3+r)/2-r);
            if (r == n-1)
                printf("");//什么都不打印的意思
            else if (c != n-r-1)
                printf(" ");
            else
                printf("\n");
        }
    }
}
int main()
{
    foo(5);
    return 0;
}


[fly]存在即是合理[/fly]
2012-12-27 20:57
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
回复 30楼 浅水无殇
C99支持变长数组的

可惜支持C99的编译器不常用

指针就是申请空间,,malloc


[fly]存在即是合理[/fly]
2012-12-27 20:59
浅水无殇
Rank: 2
等 级:论坛游民
帖 子:123
专家分:75
注 册:2012-11-23
收藏
得分:0 
程序代码:
#include <stdio.h>
void foo(int n)
{
    for(int r = 0;r < n;++r)
    {
        for(int c = 0;c < n - r;++c)
        {
            printf( "%d", 1+(c+r)*(c+3+r)/2-r);
            if (r == n-1)
                printf("");//什么都不打印的意思
            else if (c != n-r-1)
                printf(" ");
            else
                printf("\n");
        }
    }
}
int main()
{  int m;scanf("%d",&m);
    foo(m);
    return 0;
}

wula wual
2012-12-27 21:03
浅水无殇
Rank: 2
等 级:论坛游民
帖 子:123
专家分:75
注 册:2012-11-23
收藏
得分:0 
恩恩。。。我要加油啊

wula wual
2012-12-27 21:06
浅水无殇
Rank: 2
等 级:论坛游民
帖 子:123
专家分:75
注 册:2012-11-23
收藏
得分:0 
再次谢谢各位。。。。。

wula wual
2012-12-27 21:08
冰冻零点
Rank: 3Rank: 3
来 自:西安电子科技大学
等 级:论坛游侠
帖 子:81
专家分:136
注 册:2012-9-18
收藏
得分:0 
回复 17楼 浅水无殇
其实我也想说,蛇行应该是矩形的,就算是三角型,也应该这样
1 3 4 10
2 5 9
6 8
7
这才是蛇的形状。
另外,开那么大数组确实有点随意了,做题坐习惯了,n不大用变长数组就好

好好学习,天天向上
2012-12-27 21:31
浅水无殇
Rank: 2
等 级:论坛游民
帖 子:123
专家分:75
注 册:2012-11-23
收藏
得分:0 
好吧。。。这个算蛇形矩阵的变式。。。嘿嘿。。。
亲们,多交流啊。。。

wula wual
2012-12-27 22:22
wb913515436
Rank: 1
来 自:陕西省咸阳市
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-23
收藏
得分:0 
回复 3楼 a151141
只是上三角啊!!
2013-09-06 22:43
wb913515436
Rank: 1
来 自:陕西省咸阳市
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-23
收藏
得分:0 
回复 楼主 浅水无殇
任意的全矩阵哦!!
#include<stdio.h>
 #include<stdlib.h>
 int main()
 {
      int i,j,k,n,x,h,y;
      int a[15][15]={0};
      printf("输入蛇形方阵的阶数:");
      scanf("%d",&i);
      k=1;
      for(n=1;n<=i;n++)    //上三角的循环
      {
                 if(n%2==1)
                 {
                       y=n-1;
                       x=0;
                       for(;y>=0;)
                       a[y--][x++]=k++;
                 }
                 if(n%2==0)
                 {
                           x=n-1;
                           y=0;
                           for(;x>=0;)
                           a[y++][x--]=k++;
                 }
      }
      k=(n-1)*(n-1);
      for(n=2*i-1;n>=i;n--)   //下三角的循环
      {
                if(n%2==0)
                {
                          x=i-1;
                          y=i-(2*i-1-n);
                          for(;y<=i-1;)
                          a[y++][x--]=k--;
                }
                if(n%2==1)
                {
                          y=i-1;
                          x=i-(2*i-1-n);
                          for(;x<=i-1;)
                          a[y--][x++]=k--;
                }
      }
                        
      for (h=0;h<i;h++)
  {
       for (j=0;j<i;j++)
       printf("%5d",a[h][j]);
  
     printf("\n");
  }   
  system("pause");
  return 0;
}

[ 本帖最后由 wb913515436 于 2013-9-7 00:09 编辑 ]
2013-09-07 00:08
我年忘谨
Rank: 1
等 级:新手上路
帖 子:2
专家分:7
注 册:2014-11-10
收藏
得分:0 


#include<stdio.h>
void main()
{
    int a[20][20],i,j,n;
    scanf("%d",&n);
    for(i=0;i<=(n-1);i++)
    {if(i==0)
            a[i][0]=1;
        else a[i][0]=a[i-1][0]+i;
    for(j=1;(i+j)<=(n-1);j++)
        a[i][j]=a[i][j-1]+i+j+1;}
    for(i=0;i<n;i++)
        if(i<(n-1))
    {for(j=0;(i+j)<n;j++)
    if(i+j==(n-1))
        printf("%d",a[i][j]);
    else
    printf("%d ",a[i][j]);
            printf("\n");}
        else printf("%d",a[i][0]);
}

2014-11-10 15:26
快速回复:蛇形矩阵
数据加载中...
 
   



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

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