|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- #include<math.h>
- int function(int ,int);
- int function(int a,int b)
- {
- int i,min,max,t,y[t],gs=0,sum,temp,ys;//gs为符合条件的个数,t为位数,ys为余数,
- //sum为求的和,temp表示i的此时的值
- min=(a<b)?a:b;
- max=(a>b)?a:b;
- for(i=min;i<=max;i++)
- {
- sum=0;
- temp=i;
- for(t=0;temp!=0;i++)
- {
- temp/=10;
- t++;
- }
- temp=i;
- for(;temp!=0;)
- {
- ys=temp%10;
- temp/=10;
- sum+=pow(ys,t);
- }
-
- if(sum==i&&i>=100)
- gs++;
- }
- return gs;
-
- }
- int main()
- {
- int a,b ;
- scanf("%d%d",&a,&b);
- printf("%d",function(a,b));
- return 0;
- }
复制代码
哪里错了???
本帖最后由 jackz007 于 2022-10-31 22:45 编辑
- #include <stdio.h>
- int function(int a , int b)
- {
- int c , d , e , i , k ;
- for(k = 0 , i = ((a < b) ? a : b) ; i < ((a < b) ? b + 1 : a + 1) ; i ++) {
- c = i / 100 ; d = (i % 100) / 10 ; e = i % 10 ;
- if(c * c * c + d * d * d + e * e * e == i) k ++ ;
- }
- return k ;
- }
- int main(void)
- {
- int a , b ;
- scanf("%d%d" , & a , & b) ;
- printf("%d\n" , function(a , b)) ;
- }
复制代码
编译运行实况:
- D:\[00.Exerciese.2022]\C>g++ -o x x.c
- D:\[00.Exerciese.2022]\C>x
- 100 999
- 4
- D:\[00.Exerciese.2022]\C>x
- 999 100
- 4
- D:\[00.Exerciese.2022]\C>
复制代码
|
|