【C语言】输出由各种符号打印出的三角形

    科技2022-07-10  111

    对于输出由*组成的三角形问题中,当然最“笨”的方法可以用print()语句一行一行的输出三角形每行对应的星星,不过,用循环语句的话会更节省时间。下面就是几种常见的三角形图案。

    (1) 首先大家注意上边这个等腰直角三角形,第一列和第一行均6颗星; 想要几颗星的三角形都可以,只要把如下代码中的第4行代码中的 n=6 改成你想要的数字即可,比如你想要四颗星的三角形,就把6改成4. 方法1

    #include <stdio.h> int main() { int n=4; int i,j; for(i=0;i<n;i++) { for(j=0;j<n-i;j++) printf("*"); if(i<n-1) printf("\n"); } return 0; }

    方法2

    #include <stdio.h> int main() { int n=6; int i,j; for(i=1;i<n+1;i++) { for(j=1;j<=n-i+1;j++) printf("*"); if(i<n) printf("\n"); } return 0; }

    (2) 上边这个三角形,第一列和最后一行均6颗星; 想要几颗星的三角形都可以,只需把如下代码中的第4行代码中的 n=6 改成你想要的数字即可。

    #include <stdio.h> int main() { int n=6; int i,j; for(i=0;i<n;i++) { for(j=0;j<=i;j++) printf("*"); printf("\n"); } return 0; }

    (3) 上边这个三角形,最后一列和最后一行均6颗星; 想要几颗星的三角形都可以,只需把如下代码中的第4行代码中的 n=6 改成你想要的数字即可。

    #include <stdio.h> int main() { int n=6; int i,j; for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=i;j++) printf("*"); printf("\n"); } return 0; }

    #include <stdio.h> int main() { int n=6; int i,j; for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=i;j<n;j++) printf("*"); printf("\n"); } return 0; }

    #include <stdio.h> int main() { int n=6; int i,j; for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=n-i-1;j<n+i;j++) printf("*"); printf("\n"); } return 0; }

    #include <stdio.h> int main() { int n=6; int i,j; for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=i;j<2*n-i-1;j++) printf("*"); printf("\n"); } return 0; }

    #include <stdio.h> int main() { for(int i=0;i<=4;i++){ for(int j=0;j<=4-i;j++){ printf(" "); } for(int k=0;k<=i*2;k++){ printf("*"); } printf("\n"); } for(int m=0;m<=4;m++){ for(int n=0;n<=m;n++){ printf(" "); } for(int a=0;a<9-m*2;a++){ printf("*"); } printf("\n"); } return 0; }

    当然,实现每种三角形都不止一种方法,欢迎大家在评论区留言,分享更简洁更省时间的代码实现。

    Processed: 0.013, SQL: 8