可以写成调用函数#include<stdio.h>void rose(int n){int a,b,c,d;a=n/1000;b=n/100%10;c=n/10%10;d=n%10;if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d==n)printf("%d\t",n);}main(){int i;for(i=1000;i<=9999;i++)rose(i);}方法比较笨,但更容易理解。