|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
void sxh(int m)
{
int n;
n = m;
int a = (n / 1000000000) * (n % 1000000000);
int b = (n / 100000000) * (n % 100000000);
int c = (n / 10000000) * (n % 10000000);
int d = (n / 1000000) * (n % 1000000);
int e = (n / 10000) * (n % 10000);
int f = (n / 1000) * (n % 1000);
int g = (n / 100) * (n % 100);
int h = (n / 10) * (n % 10);
int sum = a + b + c + d + e + f + g + h;
if (n == sum)
{
return printf("他是变异水仙花数");
}
else
{
return printf("他不是变异水仙花数");
}
}
int main()
{
int i;
printf("输入一个数,我会判断他是否为变异水仙花数:");
scanf("%d",&i);
int sxh(i);
return 0;
}
本帖最后由 jackz007 于 2022-10-23 18:31 编辑
- #include<stdio.h>
- int sxh(long long m)
- {
- long long k , s ;
- int r = 0 ;
- if(m > 99 && m % 10) {
- for(s = 0 , k = 10 ; m / k ; k *= 10) s += (m / k) * (m % k) ;
- if(s == m) r = 1
- }
- return r ;
- }
- int main()
- {
- long long i , n ;
- n = 10000 ;
- for(i = 0 ; i < n ; i ++) if(sxh(i)) printf("%I64d\n" , i) ;
- }
复制代码
编译、运行实况:
- D:\[00.Exerciese.2022]\C>g++ -o x x.c
- D:\[00.Exerciese.2022]\C>x
- 655
- 1461
- 1642
- 2361
- 3442
- D:\[00.Exerciese.2022]\C>
复制代码
|
|