| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 919 人关注过本帖, 1 人收藏
标题:请帮忙看看,谢谢
取消只看楼主 加入收藏
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏(1)
 问题点数:0 回复次数:5 
请帮忙看看,谢谢

题目

用1-9组成三个3位的平方数 将1,2,3,4,5,6,7,8,9,九个数字分成三组,每个数字只能用一次,既每组三个数,不允许有重复数字,也不许同其它组的三个数字重复,要求每组中的三位数都组成一个平方数.

解答:

main() { int flag[10]={0},i,i1,i2,t=0,c,a,j;

for(i=10;i<32;i++) for(i1=10;i1<32;i1++) if(i1>i) for(i2=10;i2<32;i2++) if(i2>i1&&i2>i) { c=i*i; while(c){a=c%10;c/=10;flag[a]=a;} c=i1*i1; while(c){a=c%10;c/=10;flag[a]=a;} c=i2*i2; while(c){a=c%10;c/=10;flag[a]=a;} for(j=1;j<10;j++) {if (flag[j]!=0)t++; flag[j]=0; } if (t==9)printf("%d %d %d %d %d %d\n",i,i1,i2,i*i,i1*i1,i2*i2); t=0; } }

嗯,看了几天还是不明白~~~~我高兴得太早啦~~~高手帮忙写一下注解好吗?谢谢

2004-06-14 20:14
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏
得分:0 
嗯,大家努力~~~谢谢你们啦

我是菜鸟我要拼!!!!!
2004-06-14 23:06
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏
得分:0 

嗯,有很多呢:

一:t=0的作用是什么?

二:c=i*i;while(c){a=c%10;c/=10;flag[a]=a;}与 while(c=i*i){a=c%10;c/=10;flag[a]=a;}有什么不同,后者好像不行呢.

三:最后的那个for语句是干什么用的???

四:大侠你好像改名了是吗?上次帮我解题时好像是中文名的呢~~~


我是菜鸟我要拼!!!!!
2004-06-15 09:23
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏
得分:0 

第二个问题好像懂了,在<<C程序设计(第二版)>>第111页有(如果我没理解错~~),其它的还是有劳高手了,谢谢


我是菜鸟我要拼!!!!!
2004-06-15 10:29
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏
得分:0 

嗯,思路明了啦,谢谢你.


我是菜鸟我要拼!!!!!
2004-06-15 19:58
xyx
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2004-6-9
收藏
得分:0 
看了一下上次的贴子,是我记错了呢,这个程序就是knocker大侠写的,在此再次道谢(原谅我的马虎与婆妈~~~)

我是菜鸟我要拼!!!!!
2004-06-16 10:39
快速回复:请帮忙看看,谢谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024708 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved