zoukankan      html  css  js  c++  java
  • hdu 2153 仙人球的残影

    题目

    这道题可以有两种写法:
    第一种:找规律,如下:
    #include <stdio.h>
    int main()
    {
        int n,i,j,res;
        while (scanf("%d",&n)!=EOF)
        {
            for (j=1; j<=n; j++) //首行
            {
                if (j!=n)
                    printf("%3d",j);
                else{
                    printf("%3d
    ",j);
                         res = ++j;
                    }
            }
            for (i=1; i<n-1; i++)//中间行
            {
                for (j=0; j<n; j++)//中间行数值
                {
                    if (j==0)//第一个
                        printf("%3d",4*(n-1)-i+1);
                    else if (j==n-1)//最后一个
                      {
                          printf("%3d
    ",res);
                          res++;
                      }
                    else  printf("   ");
                }
            }
            for (i=0; i<n; i++)//尾行
            {
                if (i!=n-1)
                    printf("%3d",3*(n-1)+1-i);
                else
                    printf("%3d
    ",2*n-1);
            }
        }
        return 0;
    }
    

    第二种:蛇形填数,如下:
    #include<stdio.h>
    #include<string.h>
    int main()
    {
        int n,i,j;
        int a[20][20];
        while(~scanf("%d",&n),n)
        {
            memset(a,0,sizeof(a));
            int t = 0;
            i = j  = 1;
            while( j < n)//第一排(向右)
                a[i][j++] = ++t;
    
    
            while( i < n)//右边一列(向下)
                a[i++][j] = ++t;
     
           while(j >1)
                a[i][j--] = ++t;
    
    
            while(i > 1)
                a[i--][j] = ++t;
    
            for(i = 1;i<=n;i++)
            {
                for(j = 1;j<=n ; j++)
                {
                    if(a[i][j]==0)
                        printf("   ");
                    else{
                        printf("%3d",a[i][j]);
                    }
                }
                printf("
    ");
            }
        }
        return 0;
    }
    



    第一次听说蛇形填数数这个名词,所以记之。。。

  • 相关阅读:
    选择排序
    快速排序
    希尔排序
    直接插入排序
    判断三角形的类型
    Unicode编码下: CString 转换为 string
    GDAL中GDALDataType中值与其在C++中数据类型对应
    ftell()
    fseek()
    fopen_s()
  • 原文地址:https://www.cnblogs.com/qie-wei/p/10160250.html
Copyright © 2011-2022 走看看