天天看点

SDUTACM[1239]水仙花数

SDUTACM[1239]水仙花数

代码展示如下:

#include<stdio.h> 
int main()
{
	int m,n,i,a,b,c,sum=0,s;
	while(scanf("%d%d",&m,&n)!= EOF)
	{
		s=0;
		for(i=m;i<=n;i++){
			a=i/100;
			b=(i-a*100)/10;
			c=i-a*100-b*10;
			sum=a*a*a+b*b*b+c*c*c;
			if(sum==i)
			{
				s++;
				//此处主要是将第一个输出单独拿出来,后面的每一输出由空格和值组成即可。
				if(s==1)printf("%d",i);
				else printf(" %d",i);
			}
		}
		if(s==0)
		{
			printf("no");
		}	
		printf("\n");
	}
	return 0;
}
           

水仙花数想必大家也不陌生,解题的思想很简单,主要是在于大家对一些细节的把握。本题主要是在于对输出数值用空格隔开的处理,末尾不能有空格。

继续阅读