《算法竞赛入门经典》位数(习题2-1) & 水仙花数(习题2-2)

/*
位数
	输入一个不超过10^9的正整数,输出它的位数。 
*/
#include<stdio.h>
int main(){
	int n;
	scanf("%d",&n);
	int count=1;
	while(n>=10){
		n=n/10;
		count++;
	}
	printf("%d\n",count);
} 

/*
水仙花数
	输出100-999中的所有水仙花数。若3位数ABC满足ABC=A^2+B^2+C^2,则称其为水仙花数。 
*/ 
#include<stdio.h>
int main(){
	int i,a,b,c;
	for(i=100;i<1000;i++){
		a=i/100;
		b=i%100/10;
		c=i%10;
		if(i==a*a*a+b*b*b+c*c*c)
		printf("%d\n",i);
	}	
}
		

你可能感兴趣的:(算法)