3920 - 打印三角形

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

给定一个正整数n,输出一个字母三角形,规律详细请见样例

题目输入

每组测试数据一个整数n

0<n<27

题目输出

每组测试数据先输出 Case #x: y

再在接下来的空间输出三角形

输入/输出样例

输入格式

3
4
5

输出格式

Case #1:
  A
 BAB
CBABC

Case #2:
   A
  BAB
 CBABC
DCBABCD

Case #3:
    A
   BAB
  CBABC
 DCBABCD
EDCBABCDE

C语言解答

#include<stdio.h>
int main()
{
	int n,i,m,j=1,k,l;
	while (scanf("%d", &n) != EOF)
	{

		
		printf("Case #%d:\n", j);
		for (i = 0; i < n; i++)
		{
			m = i + 65;
			for (l = 0; l <(n-i-1); l++)
				printf(" ");
			for (k = 0; k <= i; k++)
			{
				
				printf("%c", m);
				m = m - 1;
			}
		
			for (k = 1; k <= i; k++)
			{
				printf("%c", m+2);
				m = m+1;
			}
			printf("\n");
		}
		printf("\n");
		j++;
	}
	return 0;
}

C++解答

#include <cstdio>
using namespace std;
int n;
void solve(int cas);
void input()
{
	int tmp = 0;
	while (scanf("%d", &n) == 1)
		solve(++tmp);
}
void solve(int cas)
{
	printf("Case #%d:\n", cas);
	for (int i = 1; i <= n; i++)
	{
		for (int j = 0; j < n - i; j++)
			printf(" ");
		char ch = 'A' + i - 1;
		bool flag = 0;
		for (int j = 1; j <= 2 * i - 1; j++)
		{
			printf("%c", ch);
			if (ch == 'A')
				flag = 1;
			if (!flag)
				ch--;
			else
				ch++;
		}
		printf("\n");
	}
	printf("\n");
}
int main()
{
	input();
	return 0;
}

Java解答

import java.util.Scanner;

public class Main
{
    public static void main(String[] args)
    {
        Scanner in     = new Scanner(System.in);
        int     number = 0;
        int     count  = 0;

        while (in.hasNextInt())
        {
            number = in.nextInt();
            System.out.println("Case #" + ++count + ":");

            for (int i = 0; i < number; i++)
            {
                for (int j = 0; j < number - i - 1; j++)
                {
                    System.out.print(" ");
                }

                for (int j = 'A' + i; j >= 'A'; j--)
                {
                    System.out.print((char) j);
                }
                for (int j = 'B'; j <= 'A' + i; j++)
                {
                    System.out.print((char) j);
                }
                System.out.println();
            }
            System.out.println();
        }
    }
}