打印四种重要类型的正三角形(c语言)

简介: 打印四种重要类型的正三角形(c语言)

第一种类


#include<stdio.h
int main()
{
    int n, k;
    int i;
    scanf("%d", &n);
//i是代表行数
    for (i = 1; i <= n; i++)
    {
//k代表空格数,因为刚开始的数在居中位置,所以输出的空格应该是输入的数n-行数i
        for (k = 1; k <=n-i; k++)
        {
            printf(" ");
        }
//j代表输出相同数的个数,很显然j是以2i-1往下递增的,并且每打一行,j++,直到j大于2*i-1,跳出循环
        for (int j=0;j<2*i-1;j++)
        {
//最后输出的结果为(i-1)%10是因为最大的数是9,当输入的n大于9时,取n对10的余数
            printf("%d", (i-1)%10);
        }
        printf("\n");
        }
    return 0;
}


第二种类


1669387054045.jpg

#include<stdio.h>
int main()
{
    int i, a, b, c;
    scanf("%d", &a);
//b代表输出的行数;
    for (b = 1; b <= a; b++)
    {
//i代表每行输出的空格数
        for (i = 1; i <= a - b; i++)printf(" ");
//c代表每行输出的个数,(b-1)代表首项的数,(((b - 1) % 10) + c - 1) % 10);代表的是输出最大的数,且在最大的数两旁依次递减
        for (c = 1; c <= 2 * b - 1; c++) printf("%d", (((b - 1) % 10) + c - 1) % 10);
        printf("\n");
    }
    return 0;
}


第三种类


1669387081720.jpg


需特别注意当输入的值大于26时,输出需返回值为A,而且输出是字符串类型的

int main()
{
    int n;
    int b, c, i, d;
    scanf("%d", &n);
    d = 'A';
    for (b = 1; b <= n; b++)
    {
        for (i = 1; i <= n - b; i++)
        {
            printf(" ");
        }

输出的值,因为是字符串类型的,所以要%c,且d是代表字符串'A',所以要把d放外面(( b - 1)%26))则是因为当输入的n大于26时,输出要重新为A

for (c = 0; c < 2 * b - 1; c++)
        {
            printf("%c", d+(( b - 1)%26));
        }
        printf("\n");
    }
    return 0;
}


第四种类


1669387131023.jpg

#include<stdio.h>
int main()
{
    int n ;
    int b, c, i, d, e;
    scanf("%d", &n);
    d = 'A';
    for (b = 1; b <=n; b++)
    {
        for (i = 1; i <= n - b; i++)
        {
            printf(" ");
        }
        for (c = 0; c < b; c++)
        {
            printf("%c", d + c);
        }
        if (b > 1)
        {
//当行数大于一时,字符A加e的值
            for (e = b - 2; e >= 0; e--)
                printf("%c", d + e);
        }
        printf("\n");
    }
    return 0;
}

写出和总结出这些真的很不容易,希望大家以后多多支持我这个编程小白哦,希望在以后的创作中再给大家带来惊喜!

相关文章
|
4月前
|
存储 编译器 C语言
【C语言】判断字符类型的三种方法
【C语言】判断字符类型的三种方法
147 0
|
4月前
|
存储 C语言
C语言变量类型
C语言变量类型
|
1月前
|
存储 自然语言处理 编译器
C语言中的char类型
C语言中的char类型
|
1月前
|
算法 编译器 API
C语言中的longdouble类型
C语言中的longdouble类型
|
3月前
|
存储 编译器 C语言
C语言学习记录——数据的存储(数据类型、类型的基本归类、整型在内存中的存储、大小端介绍、浮点型在内存中的存储)一
C语言学习记录——数据的存储(数据类型、类型的基本归类、整型在内存中的存储、大小端介绍、浮点型在内存中的存储)一
44 2
|
3月前
|
Java 程序员 Linux
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
36 0
|
3月前
|
存储 C语言
C语言中的typedef关键字:为类型定义新名称
C语言中的typedef关键字:为类型定义新名称
|
3月前
|
存储 编译器 C语言
C语言学习记录——数据的存储(数据类型、类型的基本归类、整型在内存中的存储、大小端介绍、浮点型在内存中的存储)二
C语言学习记录——数据的存储(数据类型、类型的基本归类、整型在内存中的存储、大小端介绍、浮点型在内存中的存储)二
26 0
|
4月前
|
存储 C语言
C语言中定义结构体类型变量的深入探索
C语言中定义结构体类型变量的深入探索
30 0
|
4月前
|
C语言
C语言三角形类型判断
C语言三角形类型判断