循环的经典案例(李白买酒)

Posted 我是小美女

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环的经典案例(李白买酒)相关的知识,希望对你有一定的参考价值。

1:计算0~100之间所有能被3整除和带3的数字之和

int i=0;//循环变量

   int sum=0;

   while(i<100){

      if((i%3==0)||(i%10==3)||(i/10==3)){

      sum+=i;

    }

    i++;

   }

   printf("0~100之间所有能被3整除和带3的数字之和为%d",sum);

2:打印100~1000之间所有水仙花数,并统计其个数:==>153=1^3+5^3+3^3

int i=100;//循环变量

  int count=0,ge,shi,bai,he;//统计水仙花数

  do{

    ge=i%10;//获取个位

    shi=i/10%10;//获取十位

    bai=i/100; //获取百位

    he=ge*ge*ge+shi*shi*shi+bai*bai*bai;

    if(he==i){

         printf("%d\t",i);

         count++;

}

   i++;

  }while(i<1000);

  printf("\n100~1000之间共有%d个水仙花数",count);

3:李白闲来无事街上走,提壶去买酒,遇店加一倍,遇花喝一斗,五遇花和店喝光壶中酒,李白壶中原有多少酒? ===>逆向思维

  //分析:假设原有壶中有x斗酒;===>遇到花之前(x+1);遇到店之前(x+1)/2

  float x=0;//壶中原有酒的斗数

  int i=0;

  while(i<5){

    x=(x+1)/2;//遇到花和店之前的壶中酒的斗数

    i++;

  }

  printf("李白壶中原有%7.3f斗酒",x);

 

以上是关于循环的经典案例(李白买酒)的主要内容,如果未能解决你的问题,请参考以下文章

人工智能代码实战:AI李白如何创作诗词

关于for循环的几种经典案例

故障案例——OSPF邻居都Full,为啥还不通呢?

故障案例——OSPF邻居都Full,为啥还不通呢?

while循环 经典案例整理(九九乘法表打印加边框金字塔)

json,数组的循环案例