标题:新人新帖 求教了啊? 程序编写
只看楼主
z276001697
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-12-8
结帖率:0
已结贴  问题点数:20 回复次数:8 
新人新帖 求教了啊? 程序编写
1  1  1  1  1  1  1  1  1  1
1  2  2  2  2  2  2  2  2  1
1  2  3  3  3  3  3  3  2  1
1  2  3  4  4  4  4  3  2  1
1  2  3  4  5  5  4  3  2  1
1  2  3  4  5  5  4  3  2  1
1  2  3  4  4  4  4  3  2  1
1  2  3  3  3  3  3  3  2  1
1  2  2  2  2  2  2  2  2  1
1  1  1  1  1  1  1  1  1  1

双循环for
搜索更多相关主题的帖子: 程序编写 
2013-12-08 22:07
qqoo6789
Rank: 1
等 级:新手上路
帖 子:34
专家分:7
注 册:2013-7-11
得分:3 
//拿去试试,自己琢磨
# include <stdio.h>
int main ()
{
    int n,count;
    int i,j,k,l,u;
    printf("请输入该矩阵的长度n:\n");
    while(scanf("%d",&n)!=EOF)
    {
        count=0;
        if(n==-1)
            break;
        if(n==1)//特别注意这点
        {
            printf("1\n\n");
            continue;
        }
        int a[100][100];
        //int *a=(int *)malloc(sizeof(int*n*n));
        for(i=0;i<=n-2;i++)
        {
            count ++;
            for(j=i;j<=n-i-1;j++)
            {
                a[i][j]=count;
            }//
            j--;//由于跳出循环的时候 多加了1
            for(k=i+1;k<=n-1-i;k++)
            {
                a[k][j]=count;
            }
            k--;
            for(l=n-i-2;l>=i;l--)
            {
                a[k][l]=count;
            }
            l++;//由于跳出循环的时候多减了1
            for(u=n-i-2;u>=i+1;u--)
            {
                a[u][l]=count;
            }
            u++;
            
        }
        for(i=0;i<n;i++)
        {
            for(j=0;j<n;j++)
            {
                if(j!=n-1)
                    printf("%d ",a[i][j]);
                else
                    printf("%d",a[i][j]);
            }
            printf("\n");
        }
            printf("\n");
    }
    return 0;
}
2013-12-08 22:13
qqoo6789
Rank: 1
等 级:新手上路
帖 子:34
专家分:7
注 册:2013-7-11
得分:0 
请输入该矩阵的长度n:
17
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 1
1 2 3 4 4 4 4 4 4 4 4 4 4 4 3 2 1
1 2 3 4 5 5 5 5 5 5 5 5 5 4 3 2 1
1 2 3 4 5 6 6 6 6 6 6 6 5 4 3 2 1
1 2 3 4 5 6 7 7 7 7 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 8 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 8 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 7 7 7 7 6 5 4 3 2 1
1 2 3 4 5 6 6 6 6 6 6 6 5 4 3 2 1
1 2 3 4 5 5 5 5 5 5 5 5 5 4 3 2 1
1 2 3 4 4 4 4 4 4 4 4 4 4 4 3 2 1
1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 1
1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2013-12-08 22:14
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:3 
程序代码:
#include <stdio.h>

#define mymin(a,b) ((a)<=(b)?(a):(b))

int main()
{
    const int n = 10;
    for( int i=0; i<n*n; ++i )
    {
        int rmin = mymin( i/n+1, n-i/n );
        int cmin = mymin( i%n+1, n-i%n );
        int min = mymin( rmin, cmin );
        printf( "%d%c", min, (i+1)%n==0?'\n':' ' );
    }

    return 0;
}
2013-12-09 09:43
ytlcainiao
Rank: 2
等 级:论坛游民
帖 子:48
专家分:74
注 册:2013-11-28
得分:3 
版主就是不一样呀。
2013-12-09 10:46
pycansi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:418
专家分:1060
注 册:2012-7-26
得分:3 
回复 4楼 rjsp
漂亮


莫问前尘有愧,但求今生无悔
2013-12-14 13:36
loveClangage
Rank: 8Rank: 8
来 自:广东云浮
等 级:蝙蝠侠
帖 子:326
专家分:891
注 册:2013-8-23
得分:3 
表示佩服了,版主,

编写的程序,不能改变世界,却可以改变自己...
2013-12-14 16:49
ljx小子
Rank: 8Rank: 8
来 自:星星
等 级:蝙蝠侠
威 望:2
帖 子:222
专家分:916
注 册:2013-10-7
得分:3 
回复 4楼 rjsp
太佩服了,

。。。。。。。。。。。
2013-12-14 22:56
jingboob
Rank: 1
等 级:新手上路
帖 子:1
专家分:3
注 册:2013-12-14
得分:3 
新手表示看不懂
2013-12-14 23:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-424902-1-1.html




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

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