第五张循环语句总结

1:

#include<stdio.h>
main()
{
    int i,j,n;
    for(i=1;i<=5;i++)//将图形分为上下两部分 
    {
        for(j=i;j<=4;j++)
        printf(" ");//空格前部分最多是四 
        for(n=1;n<=2*i-1;n++)
        printf("*");
        printf("\n");
    }
    for(i=6;i<=9;i++)
    {
      for(j=1;j<=i-5;j++)
        printf(" ");
        for(n=1;n<=19-2*i;n++)// 9减去两边的空格数,空格数是i-5 
        printf("*");
        printf("\n");
    }
 } 

运行结果:

2:

#include<stdio.h>
main()
{
    int i,j;
    for(i=1;i<=5;i++)//将整体分为两部分 
    {
        for(j=1;j<=2*i-1;j++)
        printf("*");
        printf("\n");
    }
    for(i=6;i<=9;i++)
    {
      for(j=1;j<=19-2*i;j++)//空格数随行数的增加而增加二,星数等于9减空格数 
        printf("*");
        printf("\n");
    }
 } 

运行结果:

3

#include<stdio.h>
main()
{
    int i,j,n;
    for(i=1;i<=5;i++)
    {
        for(j=1;j<=10-2*i;j++)//星数等于2i-1,空格数等于 九减星数 
        printf(" ");
        for(n=1;n<=2*i-1;n++)
        printf("*");
        printf("\n");
    }
    for(i=6;i<=9;i++)
    {
      for(j=1;j<=2*i-10;j++)
        printf(" ");
        for(n=1;n<=19-2*i;n++)
        printf("*");
        printf("\n");
    }
 } 

运行结果:

4

#include<stdio.h>
main()
{
    int i,j,n;
    for(i=1;i<=5;i++)//分为两部分 
    {
      
        for(j=1;j<i;j++)//空格数是i-1 
        printf(" ");
        for(n=1;n<=11-2*i;n++)
        printf("*");
        printf("\n");
      
    }
    for(i=6;i<=9;i++)
    {
    for(j=1;j<=9-i;j++)//星数是2i-9,空格数是(9-(2i-9))/2=9-i 
        printf(" ");
        for(n=1;n<=2*i-9;n++)
        printf("*");
        printf("\n");
    }
 } 

运行结果:

5:

    int i,j,n;
    for(i=1;i<=5;i++)
      {
        for(j=1;j<i;j++)
        printf(" ");
        for(n=1;n<=9;n++)
        printf("*");
        printf("\n");
      }
    for(i=6;i<=9;i++)
    {
      for(j=1;j<=9-i;j++)
        printf(" ");
        for(n=1;n<=9;n++)
        printf("*");
        printf("\n");
    }
 } 

运行结果:

6:

#include<stdio.h>
main()
{
    int i,j,n;
    for(i=1;i<=4;i++)//分为三个部分 
      {
        for(j=i;j<=4;j++)
        printf(" ");
        for(n=1;n<=2*i-1;n++)
        printf("*");
        printf("\n");
      }
    for(i=5;i<=7;i++)
    {
        for(n=1;n<=9;n++)//每行的星数都相等 
        printf("*");
        printf("\n");
    }
        for(i=8;i<=11;i++)
      {
        for(n=1;n<=12-i;n++)
        printf("*");
        for(j=1;j<=2*i-15;j++)//空格数为九减星数,等于9-2*(12-i)=2*i-15 
        printf(" ");
        for(n=1;n<=12-i;n++)//因为空格两边有星号所以要后半部分星号排列在空格后面 
        printf("*");
        printf("\n");
      }
 } 

运行代码:

总结:

先计算好算法,联系好星号和空格之间的数据和位置间的关系,然后把复杂的图形分成更简单的几部分。

我认为的难点是:

continue语句

转载于:https://www.cnblogs.com/123456l/p/10700749.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值