分几位的
把基数放在最后就排列吧
注意0
哈哈!!!
肯定不对了 ,运行都会出现偶数.略作修改,运行好像可以
void main()
{
int i1,i2,i3,i4,i5,i6,i7,i8;
for(i1=0;i1<=7;i1++)
for(i1=0;i1<=7;i1++)
for(i2=0;i2<=7;i2++)
for(i3=0;i3<=7;i3++)
for(i4=0;i4<=7;i4++)
for(i5=0;i5<=7;i5++)
for(i6=0;i6<=7;i6++)
for(i7=0;i7<=7;i7++)
if(i7%2!=0)
{
printf("%d%d%d%d%d%d%d\n",i1,i2,i3,i4,i5,i6,i7);
};
getch();
}
你们真行!
main()
{
long i;
for(i=1;i<=77777777;i+=2)
{
printf("%ld\n",i);
}
printf("sum=%ld",i/2);
getch();
}
再说LZ也不是那个意思啊
人家意思应该是无重复的数
要不77777777777777777777777777777777777777这个也行啊!!!
/*加上这个函数判断一下,只是这个函数效率太低*/
int is_same(int num)
{
int i=0,j,a[8];
while(num)
{
a[i]=num%10;
num=num/10;
i++;
}
while(i>=0)
{
j=i-1;
while(j>=0)
{
if(a[j]==a[i])
{
return(0);
}
j--;
}
i--;
}
return(1);
}
#include<stdio.h>
int is_same(long num)
{
int i=0,j,a[8];
while(num)
{
a[i]=num%10;
num=num/10;
i++;
}
while(i>=0)
{
j=i-1;
while(j>=0)
{
if(a[j]==a[i])
{
return(0);
}
j--;
}
i--;
}
return(1);
}
int main()
{
long i,sum=0;
for(i=1;i<=77777777;i+=2)
{
if(is_same(i)==1)
{
//printf("%ld\n",i);
sum++;
}
}
printf("sum=%ld\n",sum);
return(0);
}
/*这段程序运行好几秒钟才出结果*/