编程初学者入门4_打印线段图案 正方形图案 直角三角形图案 翻转直角三角形图案 带空格直角三角形图案 金字塔图案 翻转金字塔图案 菱形图案 K形图案 箭形图案 反斜线形图案 正斜线形图案 X形图案等

写在前面

学习的过程就是和遗忘作斗争的过程~

题虽简单,复习一下,也许会有小收获!

题目来源于牛客,这里小结一下

所涉及知识点基本是循环、嵌套循环、条件判断、找规律。

题目

  1. 线段图案
  2. 正方形图案
  3. 直角三角形图案
  4. 翻转直角三角形图案
  5. 带空格直角三角形图案
  6. 金字塔图案
  7. 翻转金字塔图案
  8. 菱形图案
  9. K形图案
  10. 箭形图案
  11. 反斜线形图案
  12. 正斜线形图案
  13. X形图案 简单
  14. 空心正方形图案
  15. 空心三角形图案

开始
1-线段图案
在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int i;
    while(scanf("%d",&i) != EOF){
        for(int j = 0;j<i;j++){
            printf("*");
            
        }
        printf("\n");
    }
    return 0;
}

2-正方形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i < a;i++){
            for(int j = 0; j < a;j++){
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
    
}

3-直角三角形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<=i;j++){
                printf("* ");
            }
            printf("\n");
        }
        
    }
    return 0;
}

4-翻转直角三角形图案
在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        
       for(int i = 0;i<a;i++){
           for(int j = 0;j<a-i;j++){
               printf("* ");
           }
           printf("\n");
       }
    }
    return 0;
}

5-带空格直角三角形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        
        for( int i = 0;i<a;i++){
            for(int j = 0;j<a-i-1;j++){
                printf("  ");
                
            }
            for(int m = 0;m<i+1;m++){
                printf("* ");
            }
            printf("\n");
        }
        
    }
    
    return 0;
}

6-金字塔图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<a-i-1;j++){
                printf(" ");
            }
            for(int m = 0;m<i+1;m++){
                printf("* ");
            }
            printf("\n");
        }
        
        
    }
    return 0;
    
}

7-翻转金字塔图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j  =0;j<i;j++){
                printf(" ");
            }
            for(int m = 0;m<a-i;m++){
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

8-菱形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<a-i;j++){
                printf(" ");
            }
            for(int m = 0;m<i+1;m++){
                printf("* ");
            }
            printf("\n");
            
        }
        for(int n = 0;n<a+1;n++){
            printf("* ");
        }
        printf("\n");
        
        for(int i = 0;i<a;i++){
            for(int j = 0;j<i+1;j++){
                printf(" ");
            }
            for(int l = 0;l<a-i;l++){
                printf("* ");
            }
            printf("\n");
        }
    }
}

9-K形图案

在这里插入图片描述

#include <cstdio>
int main()
{
    int a;
    while(~scanf("%d",&a))
    {
        for(int i=a;i>0;--i)//上半部分 a行
        {
            for(int j=0;j<=i;++j)
                printf("* ");
            for(int k=0;k<a-i;++k)//这是一个坑 需要输出空格
                printf(" ");
            printf("\n");
        }
        for(int i=0;i<=a;++i)//下半部分 a+1行
        {
            for(int j=0;j<=i;++j)
                printf("* ");
            for(int k=0;k<a-i;++k)//这是一个坑 需要输出空格
                printf(" ");
            printf("\n");
        }
    }
    return 0;
}

10-箭形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        //上半部分
        for(int i = 0;i<a;i++){
            for(int j = 0;j<2*(a-i);j++){
                printf(" ");
            }
            for(int k = 0;k<i+1;k++){
                printf("*");
            }
            printf("\n");
        }
        //中间部分
        for(int l = 0;l<a+1;l++){
            printf("*");
        }
        printf("\n");
        //下半部分
        for(int m = 0;m<a;m++){
            for(int n = 0;n<2*(m+1);n++){
                printf(" ");
                
            }
            for(int o = 0;o<a-m;o++){
                printf("*");
            }
            printf("\n");
        }
        
    }
    return 0;
       
    
}

11-反斜线形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<i;j++){
                printf(" ");
            }
            printf("*");;
            for(int k = 0;k<a-i;k++){
                printf(" ");
            }
            printf("\n");
        }
    }
    return 0;
}

12-正斜线形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<a-i-1;j++){
                printf(" ");
            }
            printf("*");
            for(int k = 0;k<i;k++){
                printf(" ");
            }
            printf("\n");
                
            
        }
    }

}

13-X形图案

在这里插入图片描述

#include <bits/stdc++.h>
using namespace std;
int main() {
    int n;
    while (scanf("%d", &n) != EOF) {
        //行数n
        for(int i = 0; i < n; ++i) {
            //列数n,内嵌循环
            for(int j = 0; j < n; ++j) {
                if(i == j)
                    printf("*");
                else if(j == n-i-1)
                    printf("*");
                else
                    printf(" ");
            }
            printf("\n");
        }
    }
    return 0;
}

14-空心正方形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
           for(int j = 0;j<a;j++){
               if(i == 0 || i == a-1){
                   printf("* ");
               }
               else{
                   if(j == 0 || j == a-1){
                       printf("* ");
                   }
                   else{
                       //注意这里是两个空格
                        printf("  ");
                   }
                  
               }
              
           }
            printf("\n");
        }
    }
    return 0;
}

15-空心三角形图案

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a;
    while(scanf("%d",&a) != EOF){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<a;j++){
                if(j == 0 || i == j || i == a-1){
                    printf("* ");
                }
                else{
                    printf("  ");
                }
                
            }
            printf("\n");
        }
        
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

scl、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值