C语言编程,给出一个0~9的随机排列组合,要求每次运行程序,都可以得到不同的排列组合

运行出来没有零,怎么改
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int rd(void)
{
int random = rand()%9+1;
return random;
}
void main()
{
int i,j,a[9];
srand((unsigned)(time(0)));
a[0]=rd();
for(i=0;i<9;i++)
{
a[i]=rd();
for(j=0;j<i;j++)
{
if(a[i]==a[j])
{
a[i]=rd();
j=-1;
continue;
}

}
}
for(i=0;i<9;i++)
{
printf("%-4d",a[i]);
}
printf("\n");
}

第1个回答  2016-06-12
错误1:三处缺少分号第一处,s=1.0第二处,pi=pi*2第三处,n++错误2:doublex;void这里的VIOID完全没有意义只是填错误而已。错误3:scanf("%If,&x);这里%lf后面缺少引号”。朋友,就这三处了,全是粗心造成的。我改了编译过了能运行。答案也对。谢谢。加加油,好好学,很有前途,呵呵。
第2个回答  推荐于2017-09-29
int random = rand()%9+1;

改成
int random = rand()%10;呢

然后把下面的3个9改成10,毕竟0-9一个10个数字本回答被网友采纳
相似回答