| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 258 人关注过本帖
标题:这道题OJ杂不能通过?
取消只看楼主 加入收藏
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
结帖率:94.64%
收藏
已结贴  问题点数:20 回复次数:1 
这道题OJ杂不能通过?

B5.菱形字母图
问题描述

输入一个整数n,输出如下用大写字母构成的有规律的图形。如n=3,有图形

但对有些整数n,是无法输出这样的图形的,如n=30。

输入
输入有若干行,每行有一个整数n,(|n|<65536)。 输入直到文件输入结束。
输出
对每一行的测试数据,先在一行上输出“Case #:”,其中“#”是测试数据的行编号(从1开始),再在同一行上输出n的具体值,格式如“n=3”。接着在下面的一行或若干行上输出结果图形。如无法按 要求输出菱形字母图,那么输出“No image!”;两组输出数据之间空一行。

输入样例
3
4

输出样例

Case 1: n=3
  A
 BBB
CCCCC
 BBB
  A

Case 2: n=4
   A
  BBB
 CCCCC
DDDDDDD
 CCCCC
  BBB
   A

原文链接:http://acmoj.shu.

代码:
程序代码:
#include <stdio.h>

void draw(int n) {
    char letter = 'A';
    int space = n - 1, cols = 1, i;
    while(space > 0) {
        for(i = 0; i < space; i++)
            putchar(' ');
        for(i = 0; i < cols; i++)
            putchar(letter);
        printf("\n");
        cols += 2;
        space--;
        letter++;
    }
    for(i = 0; i < cols; i++)
        putchar(letter);
    printf("\n");
    letter--;
    space++;
    cols -= 2;
    while(space < n) {
        for(i = 0; i < space; i++)
            putchar(' ');
        for(i = 0; i < cols; i++)
            putchar(letter);
        printf("\n");
        cols -= 2;
        space++;
        letter--;
    }
}

int main(void) {
    int n, i = 1;
    while(scanf("%d", &n) != EOF) {
        if(n > 0 && n < 27) {
            printf("case %d:n=%d\n", i++, n);
            draw(n);
            printf("\n");
        } else {
            printf("No image!\n\n");
        }
    }
    return 0;
}

搜索更多相关主题的帖子: 图形 数据 
2011-06-20 11:31
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
回复 2楼 ppfly
改成大写还是错了,蛋疼啊。

My life is brilliant
2011-06-20 12:39
快速回复:这道题OJ杂不能通过?
数据加载中...
 
   



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

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