5个题

  1. 实现梯形数字
  2. 三位水仙花
  3. 判断10以内的素数
  4. n位水仙花

1.实现梯形数字

实现如图效果image
#include <stdio.h>
int main()
{
	int m,i,n;
	for(i=1;i<=5;i++)
	{
		for(n=1;n<=5-i;n++)
		     printf(" ");
	    for(m=1;m<=i;m++)
		     printf("%d",i);
	printf("\n");
	}
	return 0;
}

2.三位水仙花

找出100~999之内的水仙花数
#include <stdio.h>
int main()
{  
    int n,a,b,c,i;
 	for(n=100;n<=999;n++)
 	{
 		a=n%10;   
 		b=n/10%10;  
 		c=n/100;
 		if(n==a*a*a+b*b*b+c*c*c)
   			printf("%6d",n);  
 	}
}

3.判断10以内的素数

#include <stdio.h>
int main()
{   
    int i,j;
 	for(i=1;i<=10;i++)
 	{
    	for(j=2;j<i;j++)
     		if(i%j==0)
      			break;
    	if(j==i)
     		printf("%d是素数\n",i);
 	}
}

4.n位水仙花

#include <stdio.h>
int main()
{  
 	int n,a,b,c,d,e,g,m;
 	scanf("%d",&m);
 	if(m==3)
 	for(n=100;n<=999;n++)
 	{
 		a=n%10;   
 		b=n/10%10;  
 		c=n/100%10;
 		if(n==a*a*a+b*b*b+c*c*c)
   			printf("%d\n",n); 
	}
 	if(m==4)
  		for(n=1000;n<=9999;n++)
 		{
 			a=n%10;   
 			b=n/10%10;  
 			c=n/100%10;
 			d=n/1000%10;
 			if(n==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)
   				printf("%d\n",n);  
 		}
 	if(m==5)
  		for(n=10000;n<=99999;n++)
 		{
 			a=n%10;   
 			b=n/10%10;  
 			c=n/100%10;
 			d=n/1000%10;
 			e=n/10000%10;
 			if(n==a*a*a*a*a+b*b*b*b*b+c*c*c*c*c+d*d*d*d*d+e*e*e*e*e)
   				printf("%d\n",n);  
 		}
 	if(m==6)
  		for(n=100000;n<=999999;n++)
	 	{
 			a=n%10;   
 			b=n/10%10;  
 			c=n/100%10;
 			d=n/1000%10;
 			e=n/10000%10;
 			g=n/100000%10;
  			if(n==a*a*a*a*a*a+b*b*b*b*b*b+c*c*c*c*c*c+d*d*d*d*d*d+e*e*e*e*e*e+g*g*g*g*g*g)
   				printf("%d\n",n);  
 		}
 	return 0;
}
posted @ 2022-01-19 16:01  早晨9点  阅读(49)  评论(0)    收藏  举报