解题思路:
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int long i = 1, t=1,sum=0;
int s = 1;
int a;
int k = 0;
int b[4];
while (i<=100000)
{
a = t % 10;//取余
for (int j = 1; j <= a; j++)
{
s = s * j;//余数的阶乘
}
sum = sum + s;//累加余数的阶乘
s = 1;//重置为1 为了不影响 下次余数的计算
t = t / 10;
if (t == 0)//当t=0时表明此数各位数的求余已完成 进入判断
{
if (sum == i)//相等即为所求数
{
b[k] = i;
k++;
}
i++;
t = i;
sum = 0;//不影响下个数的余数累加
}
}
printf("%d %d %d %d", b[0], b[2], b[1], b[3]);//此处为投机取巧
return 0;
}
0.0分
3 人评分
汽水瓶 (C语言代码)怎么答案错误?????浏览:794 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:538 |
大神老白 (C语言代码)浏览:712 |
C语言训练-最大数问题 (C语言代码)浏览:633 |
A+B for Input-Output Practice (VI) (C++代码)浏览:413 |
C语言考试练习题_排列 (C语言代码)浏览:719 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:575 |
C语言训练-大、小写问题 (C语言代码)浏览:611 |
Wu-求圆的面积 (C++代码)浏览:1883 |
完数 (C语言代码)浏览:685 |