解题思路:
注意事项:
参考代码:
#include<stdio.h>
int go(int i);
int jie(int n);
int main()
{
int i,a,b,c,d,e,j;
for(j=1; j<10; j++)
{
for(i=j; i<=j; i++)
{
if(i==go(i))
{
printf("%d ",i);
}
}
for(i=j*10; i<(j+1)*10; i++)
{
if(i==go(i))
{
printf("%d ",i);
}
}
for(i=j*100; i<(j+1)*100; i++)
{
if(i==go(i))
{
printf("%d ",i);
}
}
for(i=j*1000; i<(j+1)*1000; i++)
{
if(i==go(i))
{
printf("%d ",i);
}
}
for(i=j*10000; i<(j+1)*10000; i++)
{
if(i==go(i))
{
printf("%d ",i);
}
}
}
}
int go(int n)
{
int a,b,c,d,e,f,x;
if(n<10)
{
a=n%10;
x=jie(a);
return x;
}
else if(n<100)
{
a=n/10;
b=n%10;
x=jie(a)+jie(b);
return x;
}
else if(n<1000)
{
a=n/100;
b=n%100/10;
c=n%10;
x=jie(a)+jie(b)+jie(c);
return x;
}
else if(n<10000)
{
a=n/1000;
b=n%1000/100;
c=n%100/10;
d=n%10;
x=jie(a)+jie(b)+jie(c)+jie(d);
return x;
}
else if(n<100000)
{
a=n/10000;
b=n%10000/1000;
c=n%1000/100;
d=n%100/10;
e=n%10;
x=jie(a)+jie(b)+jie(c)+jie(d)+jie(e);
return x;
}
}
int jie(int n)
{
int i,sum;
sum=1;
for(i=1; i<=n; i++)
{
sum=sum*i;
}
return sum;
}
0.0分
1 人评分
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:468 |
简单的a+b (C语言代码)浏览:720 |
C语言考试练习题_一元二次方程 (C语言代码)浏览:737 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:518 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:531 |
演讲大赛评分 (C语言代码)浏览:1641 |
C语言程序设计教程(第三版)课后习题12.6 (C语言代码)浏览:662 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:2166 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:1200 |
用筛法求之N内的素数。 (C语言代码)浏览:577 |