21xrx.com
2024-11-05 17:29:20 Tuesday
登录
文章检索 我的文章 写文章
C++教程:如何打印出100~1000之间的所有水仙花数
2023-07-05 04:14:18 深夜i     --     --
C++ 教程 打印 水仙花数 100-1000

水仙花数,也称为阿姆斯特朗数,是指一个n位数,它的每个位上数字的n次幂之和等于该数本身。比如3位数的水仙花数有153、370、371、407等。

在C++中,我们可以通过循环和数的分解来判断一个数是否是水仙花数。以下是打印100~1000之间的所有水仙花数的代码:


#include<iostream>

using namespace std;

int main(){

  int a, b, c, i;

  for(i = 100; i <= 1000; i++){

    a = i / 100; //分解出百位

    b = i / 10 % 10; //分解出十位

    c = i % 10; //分解出个位

    if(i == a*a*a + b*b*b + c*c*c)

      cout<<i<<endl; //输出水仙花数

    

  }

  return 0;

}

首先,在主函数中定义了变量a、b、c和循环变量i,其中a表示百位数,b表示十位数,c表示个位数。

接着,通过for循环将i从100遍历到1000,分解出百位、十位和个位,分别赋值给a、b、c。

最后,通过if语句判断该数是否为水仙花数,如果是,就输出该数。

运行程序后,控制台将输出100~1000之间的所有水仙花数,即153、370、371、407。

总结一下,通过循环和数的分解,我们可以判断一个数是否是水仙花数,在C++中打印出100~1000之间的所有水仙花数也就变得很简单。而这也再次证明了程序设计的魅力和实用性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复