这个程序编写如下:#include "stdio.h"main(){int data,out;int num[13];int i=0,j,k;clrscr();for(data=10;data<32;data++) { out=data*data; if(check(out)) /*printf("%3d ",out);*/{num=out;i++;} }/* for(i=0;i<13;i++) printf("%4d",num); */ printf("The result is:");for(i=0;i<12;i++) {for(j=i;j<12;j++){for(k=j;k<12;k++) {if(check_three_three(num,num[j])&&check_three_three(num,num[k])&&check_three_three(num[j],num[k]))printf("%4d %4d %4d \n",num,num[j],num[k]); }} }}int check(int data){int out=0;int bai,shi,ge;bai=data/100;shi=(data/10)%10;ge=data%10;if(bai!=shi && bai!=ge && shi!=ge) out=1;return out;}int bai(int data){int out;out=data/100%10;return out;}int shi(int data){int out;out=data/10%10;return out;}int ge(int data){int out;out=data%10;return out;}int check_one_three(int bit,int data){int bai_,shi_,ge_,out=0;bai_=bai(data);shi_=shi(data);ge_=ge(data);if(bit!=bai_&& bit!=shi_ && bit!=ge_)out=1;return out;}int check_three_three(int data1,int data2){int bai_,shi_,ge_,out=0;bai_=bai(data1);shi_=shi(data1);ge_=ge(data1);if(check_one_three(bai_,data2) && check_one_three(shi_,data2)&&check_one_three(ge_,data2))out=1;return out;}运行结果为:The result is: 361529784 |