do...while循环语句(水仙花)

 

 

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

int main01()

{

  int i = 0;

  //do...while循环可以认为是while循环的一个变形,它会先执行语句然后再判断是否继续循环。do...while格式:do {} while(表达式)

  do

  {

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

    i++;

  }while(i<10);//程序执行10次

                                                                                                                                                                                      

  return EXIT_SUCCESS;

}

 

int main02()

{

  int i=0;

  do

  {

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

    i++;

  }while(i);//0—2147483647到-2147483648,到0时,条件判断while (0)时停止。并不是死循环

  

  while(i)// i=0,不执行

  {

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

    i++;

  }

  return 0;

}

 

//水仙花:从100—999各个位数的立方和相加等于这个数本身就是一个水仙花数

int main03()

{

  int i=100;

  do

  {

    int a = i % 10;//个位数 234%10=4
    int b = i / 10 % 10;//十位数 234/10%10=3
    int c = i/100;//百位数 234/100=2
    //pow:计算次方值,需要导入表头文件#include<math.h>   (pow(a,3) + pow(b,3) + pow(c,3) == i)
    if (a*a*a + b*b*b + c*c*c == i)
    {
      printf("%d\n", i);
    }
    i++;
  } while (i <= 999);

  return 0;

}

posted @ 2020-08-08 19:48  wh19991213  阅读(1122)  评论(0编辑  收藏  举报