将1到9这9个数不重复的分成3组每组组成一个3位数要求这3个3位数都是完全平方数,例如:在下面

[复制链接]
查看11 | 回复0 | 2009-6-16 17:05:29 | 显示全部楼层 |阅读模式
这个程序编写如下:#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
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行