美文网首页
1027 打印沙漏 (20 分)

1027 打印沙漏 (20 分)

作者: 79d12e22ec53 | 来源:发表于2019-04-30 10:42 被阅读0次
#include<stdio.h>
int main()
{
    int N, n=0, sum=0, k, a;
    int i, j;
    char c;
    scanf("%d %c", &N, &c);

    sum = n*n + 2*n;

    for(n=0;;n++)
    {
        sum = n*n + 2*n;
        if(sum > (N-1)/2)
        {
            n -= 1;
            break;
        }
    }

    a = 2*n + 1;

    for(i=a;i>0;i-=2)
    {
        for(k=0;k<(a-i)/2;k++)
        {
            printf(" ");
        }
        for(j=0;j<i;j++)
        {
            putchar(c);
        }
        printf("\n");


    }

    for(i=3;i<=a;i+=2)
    {
        for(k=0;k<(a-i)/2;k++)
            printf(" ");

        for(j=0;j<i;j++)
            putchar(c);
        printf("\n");

    }
    sum = n*n + 2*n;
    int rest = N - (sum*2 + 1);
    printf("%d", rest);

    return 0;
}

相关文章

  • pat1027

    1027 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列...

  • 1027 打印沙漏 (20 分)

  • Python PAT 乙级考试1027

    1027打印沙漏(20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式...

  • 1027 打印沙漏 (20分)(Python)

    本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 所谓“沙漏形状”,是指每...

  • PAT 1027 打印沙漏 (20 分)

    GitHub

  • 1027 打印沙漏

    本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 所谓“沙漏形状”,是指每...

  • 1027 打印沙漏

    本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 所谓“沙漏形状”,是指每...

  • 【PAT-乙级-C++】1027. 打印沙漏(20)

    1027. 打印沙漏(20) 时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Stan...

  • 1027.打印沙漏

    题目描述 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印如图所谓“沙漏形...

  • 1027 打印沙漏(PTA)

    思路 利用等差变形公式算出最大的层数,继而可以算出最多需要多少个字符 先输出上部分,依次输出,利用flag++表示...

网友评论

      本文标题:1027 打印沙漏 (20 分)

      本文链接:https://www.haomeiwen.com/subject/rkemnqtx.html