| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1868 人关注过本帖
标题:[求助]打印出1,2。。N的所有组合
只看楼主 加入收藏
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
结帖率:83.33%
收藏
 问题点数:0 回复次数:21 
[求助]打印出1,2。。N的所有组合
打印出1,2。。N的所有组合
比如说 1,2,3
是先输入一组数然后在输出
123 132 231 213 321 312
比如说 1,3,4
143 134 431 413 341 314

[此贴子已经被作者于2006-10-28 14:31:22编辑过]

搜索更多相关主题的帖子: 打印 
2006-10-27 21:55
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
得分:0 
比如说 1,2,3
123 132 231 213 321 312

main()
{
int i,j,k;
printf("\n");
for(i=1;i<5;i++)    /*以下为三重循环*/
 for(j=1;j<5;j++) 
  for (k=1;k<5;k++)
   {
    if (i!=k&&i!=j&&j!=k)    /*确保i、j、k三位互不相同*/
    printf("%d,%d,%d\n",i,j,k);
   }
}

白色的忧郁让我白色的思念从洁白到苍白,从苍白到空白,比空白更空白,变成深白的坦白!
2006-10-27 22:05
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 

哦哦 可是着个不是我想要的啊 我要的是任意输入数啊


羊肉串 葡萄干 哈密瓜!!
2006-10-27 22:12
suifengjita
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-10-12
收藏
得分:0 
#include<stdio.h>
int main()
{
int a,b,c;
for(a=1;a<=3;++a)
{
for(b=1;b<=3;++b)
{
for(c=1;c<=3;++c)
{
if(a!=b&&a!=c&&b!=c)
printf("%d%d%d ",a,b,c);
}
}
}
return 0;
}
我刚学程序,只能编出固定n的
2006-10-27 22:21
suifengjita
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-10-12
收藏
得分:0 
晕,没看到楼上的,寒
2006-10-27 22:25
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 
以下是引用suifengjita在2006-10-27 22:21:59的发言:
#include<stdio.h>
int main()
{
int a,b,c;
for(a=1;a<=3;++a)
{
for(b=1;b<=3;++b)
{
for(c=1;c<=3;++c)
{
if(a!=b&&a!=c&&b!=c)
printf("%d%d%d ",a,b,c);
}
}
}
return 0;
}
我刚学程序,只能编出固定n的

#include<stdio.h>
#include"string.h"
int main()
{
int a,b,c,i;
char s[10];
scanf("%s",s);
i=strlen(s);
for(a=s[0]-'0';a<=s[i-1]-'0';++a)
{
for(b=s[0]-'0';b<=s[i-1]-'0';++b)
{
for(c=s[0]-'0';c<=s[i-1]-'0';++c)
{
if(a!=b&&a!=c&&b!=c)
printf("%d%d%d ",a,b,c);
}
}
}
return 0;
}


羊肉串 葡萄干 哈密瓜!!
2006-10-28 14:27
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 
我想要的是 比如说 输入 2 5 8
然后打印2 5 8 的所有组合

羊肉串 葡萄干 哈密瓜!!
2006-10-28 14:29
C语言学习者
Rank: 4
等 级:贵宾
威 望:13
帖 子:1278
专家分:0
注 册:2006-9-26
收藏
得分:0 
我想问LZ,是不是三种组合。如果是这个,如果是其它那么很麻烦。
#include<stdio.h>
#define N 80
void main()
{
int i,j,k=0;
char c[N],c1[N],t;
do{printf("请任意输入3个字符\n");
gets(c);
for(i=0;c[i]!='\0';i++)
{
c1[i]=c[i];
k++;
}
if(k==3)
for(i=0;i<k-1;i++)
for(j=0;j<k;j++)
{
printf("%s\n",c);
if(j+1!=k)
{t=c[j];
c[j]=c[j+1];
c[j+1]=t;}
else
{t=c[j];
c[j]=c[0];
c[0]=t;}
}
else
printf("输入有误\n");
}while(k!=3);

}

谁有强殖装甲第二部,可以Q我460054868
2006-10-28 14:36
cwande
Rank: 2
等 级:新手上路
威 望:3
帖 子:333
专家分:0
注 册:2006-8-18
收藏
得分:0 

突然发现以前写过一个,给你参考参考...
注意输入是输入一个数(最大9位数),
比如输入258,而不要输入2 5 8,空格去掉.
[CODE]#include<stdio.h>
#include<string.h>
char prnt[20];
int tlen=0;
void out(char *s);
void out(char *s)
{
char s1[11];
int i,len,j,t;
len=strlen(s);
for(i=0;i<len;i++)
{
prnt[tlen-len]=s[i];
if (len<=1)
{
t=strlen(prnt);
for(j=0;j<t;j++)
{
printf("%c", prnt[j]);
if(j!=t-1)putchar(' ');
}
printf("\n");
}
else
{
memmove(s1, s, i);
memmove(&s1[i], &s[i+1], len-i-1);
s1[len-1]=0;
out(s1);
}
}
}
void main()
{
char s[10];
gets(s);
tlen=strlen(s);
memset(prnt, 0, 20);
out(s);
}[/CODE]


汗,都懒得写代码了.......... cheat了一个威望,哈.....
2006-10-28 14:43
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 

恩恩 就是着样


羊肉串 葡萄干 哈密瓜!!
2006-10-28 14:46
快速回复:[求助]打印出1,2。。N的所有组合
数据加载中...
 
   



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

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