您的位置:首页 > 文旅 > 旅游 > 深圳龙岗区律师_中文软件开发工具_优化关键词排名seo软件_怎样制作一个自己的网站

深圳龙岗区律师_中文软件开发工具_优化关键词排名seo软件_怎样制作一个自己的网站

2024/10/5 20:24:31 来源:https://blog.csdn.net/2401_87025655/article/details/142697771  浏览:    关键词:深圳龙岗区律师_中文软件开发工具_优化关键词排名seo软件_怎样制作一个自己的网站
深圳龙岗区律师_中文软件开发工具_优化关键词排名seo软件_怎样制作一个自己的网站

 场景:

水仙花数是指一个三位数,它的每个数位上的数字的立方和等于它本身。
例如,153就是一个水仙花数,因为1³ + 5³+ 3³ = 1 + 125 + 27 = 153。

答案之一展示:👉

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 100; i < 1000; i++){int sum = 0;int tmp = i;while (tmp > 0){int t = (tmp % 10);tmp /= 10;int r = 1;int j = 0;for (j = 0; j < 3; j++){r *= t;}sum += r;}if (sum == i){printf("%d ", i);}}return 0;
}

运行结果:👉

153 370 371 407

仅限个人感受:这道题虽然逻辑不是特别复杂,但是坑点较多。

👉👉👉强烈建议大家思考以下几个问题:

1、为什么变量sum要在for循环的内部创建,而不可以在for循环外部创建?

2、为什么变量 r 要在while循环的内部创建,而不可以在while循环外部创建?

3、为什么要引入 tmp来接受 i 的值?

小插一嘴:第三点让我想起了我之前在推文里写过的“循环体内部要留意是否能够改动循环变量”,

对于本代码中的for循环,控制循环的变量即为 i 。

希望对大家在关于变量的创建的理解上有帮助。

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com