请解释如下程序

[复制链接]
查看11 | 回复0 | 2009-1-30 06:28:38 | 显示全部楼层 |阅读模式
读不懂这个程序,请解释:(穷举法)找出N个自然数中R个数的组合,每三个数中,数不能相同,另外,如何两数组合的数,所包含的数字不同#include "stdio.h"main(){int i,j,k,r=3; for(i=5;i>=r,i--)for(j=i-1;j>=r-1;j--)
for(k=i-1;k>=r-2;k--)
if(i!=j&&i!=k&&j!=k&&i>j&&j>k)
printf("%3d%3d%3d\\n",i,j,k);}

                                                                                                此程序是求自然数12345的三个数的组合,每一组中的数彼此不相等,而且要按从大到小的顺序排列。比如,当第一个循环取5时;第二个循环取4;第三个循环可分别取3,2,1.那么可得到三组符合要求的数:543542541当第一个循环取4时;第二个循环可取3; (如果取4,会与第一个循环的4相等,这会由if条件句限制掉)第三个循环可分别取2,1.那么可得到二组符合要求的数:432431                                       
提问者对答案的评价:

                                                                                                好象还有个321吧
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行