1 条题解

  • 0
    @ 2025-10-10 15:45:57

    C :

    #include <stdio.h>
    int main()
    {
        int n,i,j;
        scanf("%d",&n);
    
        for(i=1;i<=n;i++)
        {
            if(i==1)
            {
                for(j=1;j<=n-1;j++)
                    putchar(' ');
                for(j=1;j<=n;j++)
                    putchar('*');
            }
            else if(i!=1)
            {
                for(j=1;j<=n-i;j++)
                    putchar(' ');
                putchar('*');
                for(j=1;j<=n+i*2-4;j++)
                    putchar(' ');
                putchar('*');
            }
            /*
        *****               n=5      n=7     i
       *     *5 7                            2
      *       *7 9                           3
     *         *9 11                         4
    *           *11 13                       5
     *         *9
      *       *7
       *     *5
        *****
    */
            putchar('\n');
        }
        for(i=1;i<=n-1;i++)
        {
            if(i!=n-1)
            {
                for(j=1;j<=i;j++)
                    putchar(' ');
                putchar('*');
                for(j=1;j<=3*n-2*i-4;j++)
                    putchar(' ');
                putchar('*');
            }
            else
            {
                for(j=1;j<=n-1;j++)
                    putchar(' ');
                for(j=1;j<=n;j++)
                    putchar('*');
            }
            putchar('\n');
        }
        return 0;
    }
    /*
        *****
       *     *5
      *       *7
     *         *9
    *           *11
     *         *9      n=5
      *       *7
       *     *5
        *****
    */
    
    

    C++ :

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main(){
    	int i,j,n;
    	cin>>n;
    	for(i=1;i<=n;i++){
    		for(j=1;j<=n-i;j++){
    			cout<<" ";
    		}
    		for(j=1;j<=n+(i-1)*2;j++){
    			if(i!=1){
    				if(j>1&&j<n+(i-1)*2){
    					cout<<" ";
    				}else{
    					cout<<"*";
    				}
    			}else{
    			cout<<"*";
    		}
    		}
    		cout<<endl;
    	}
    	for(i=n;i>=1;i--){
    		if(i!=n){
    		for(j=1;j<=n-i;j++){
    			cout<<" ";
    		}
    		for(j=1;j<=n+(i-1)*2;j++){
    			if(i!=1){
    				if(j>1&&j<n+(i-1)*2){
    					cout<<" ";
    				}else{
    					cout<<"*";
    				}
    			}else{
    			cout<<"*";
    		}
    		}
    		cout<<endl;
    	}
    	}
    	
    }
    

    Pascal :

    var i,j,k,n:integer;
    begin
       readln(n);
       for i := 1 to n do
       begin
         for j := 1 to n - i do
            write(' ');
          
         write('*');
          
         if i = 1 then
           for j := 1 to n - 2 do write('*')
         else
           for j := 1 to 2 * (i - 1)  + n - 2 do
              write(' ');
          
         write('*');
          
          
            
         writeln;
       end;
        
       for i := n - 1 downto 1 do
       begin
         for j := 1 to n - i do
            write(' ');
          
         write('*');
          
         if i = 1 then
           for j := 1 to n - 2 do write('*')
         else
           for j := 1 to 2 * (i - 1)  + n - 2 do
              write(' ');
          
         write('*');
          
          
            
         writeln;
       end;
    end.
    

    Java :

    import java.util.Scanner;
    public class Main {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		int n = sc.nextInt();
    		for(int i = 1 ; i <= n-1;i++) {
    			System.out.print(" ");
    		}
    		for(int i = 1 ; i <= n;i++) {
    			System.out.print("*");
    		}
    		System.out.println();
    		for(int i = 1 ; i <= n-1;i++) {//4行
    			for(int j = 1 ; j <= n - 1 -i;j++) {
    				System.out.print(" ");
    			}
    			System.out.print("*");
    			for(int j = 1 ; j <= 2*i+n-2;j++) {
    				System.out.print(" ");
    			}
    			System.out.print("*");
    			System.out.println();
    		}
    		
    		for(int i = 1 ; i <= n-2;i++) {
    			for(int j = 1 ; j <= i;j++) {
    				System.out.print(" ");
    			}
    			System.out.print("*");
    			
    			for(int j = 1 ; j <=3*n-2*i-4;j++) {
    				System.out.print(" ");
    			}
    			System.out.print("*");
    			System.out.println();
    		}
    		for(int i = 1 ; i <= n-1;i++) {
    			System.out.print(" ");
    		}
    		for(int i = 1 ; i <= n;i++) {
    			System.out.print("*");
    		}
    		
    	}
    }	
    
    • 1

    信息

    ID
    221
    时间
    1000ms
    内存
    256MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者