2184 - 打印字符图样(II)

通过次数

0

提交次数

0

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

根据输入N 输出N行字符图样, 如当N=4时,输出

       *

    * *
 
* * * *

题目输入

一个正整数N

题目输出

N行字符图样,每个星号之间有一个空格。

输入/输出样例

输入格式

4

输出格式

      *
    * * *
  * * * * *
* * * * * * *

C语言解答

#include<stdio.h>
int main(){
int N,i,k,j;
int flag=0;
scanf("%d",&N);
for(i=1;i<=N;i++){
  for(k=1;k<=(N-i);k++){
    printf("  ");
    }
  flag=0;
  for(j=1;j<=(2*i-1);j++){
    if(flag) printf(" *");
    else{
    printf("*");
    flag=1;}
    }
    printf("\n");
    flag=0;
  }
return 0;

}

C++解答

#include <iostream>
using namespace std;
int main()
{
	int N;
	cin >> N;
	for(int i = 0; i < N; i++)
	{
		int c = 2 * i;
		for(int j = 0; j < N - 1 - i; j++)
			cout << "  ";
		cout << "*";
		for(int j = 0; j < c; j++)
			cout << " *";
		cout << endl;
	}
	return 0;
}

Java解答

public class Main 
    {
            public static void main(String[] args)
            {
              java.util.Scanner input = new java.util.Scanner(System.in);
              //while(input.hasNextInt()){
                int a = input.nextInt();
               
                for(int i =1;i<=a;i++) {
                  for(int j=0;j<2*(a-i);j++){
                     System.out.print(" ");
                  }
                  for (int k = 0;k<2*i-1;k++){
                     System.out.print("*");
                    if(k+1<2*i-1)
                      System.out.print(" ");
                    
                  }
                     System.out.print("\n");
                }
              }
           // }
}