解题思路:
"水仙花数"是指这样的一个数:首先是一个三位数,其次,其各位数字的立方和等于该数本身
首先确认输入的这个数a是不是一个三位数,一个三位数除以100大于0、除以1000小于0。
接着分离这个数的个位、十位、百位。
然后确认a是否等于个位*个位*个位+十位*十位*十位+百位*百位*百位。
最后输出1或者0。
注意事项:
放个音乐听一下
每句以“;”结束
参考代码:
#include<stdio.h>
int main(){
int a,b,c;
scanf("%d",&a); //输入一个数字a=371
b=a/100; //b=3.71
c=a/1000; //c=0.371
if(b>0 && c<=0) //如果b(3.71)大于0、c(0.371)小于等于0则:
{
int q,w,e,r; //定义四个变量用于以下分离
q=a%10; //分离各位
w=(a%100)/10; //分离十位
e=a/100; //分离百位
r=q*q*q+w*w*w+e*e*e; //r=个位*个位*个位+十位*十位*十位+百位*百位*百位
if(a == r) //如果输入的三位数a=r则:
printf("1\n");
else //如果输入的三位数a!=r则:
printf("0\n");
}
else
printf("0\n");
return 0;
}
0.0分
4 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复