比如说 1,2,3
是先输入一组数然后在输出
123 132 231 213 321 312
比如说 1,3,4
143 134 431 413 341 314
[此贴子已经被作者于2006-10-28 14:31:22编辑过]
#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;
}
我又改了一下,着就是我想要的了
#include<stdio.h>
#define N 80
void main()
{
int i,j,k=0,p;
char c[N],c1[N],t;
do{printf("请任意输入N个字符\n");
gets(c);
for(i=0;c[i]!='\0';i++)
{
c1[i]=c[i];
k++;
}
for(p=0;p<k-1;p++)
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;}
}
}while(i!=strlen(c));
}