난수 중복검사 질문 ..
큰힘
아래에 코드를 짜봤는데 1~45사이의 난수 생성시에 중복 배제 조건이 안맞는지 계속 생각했던대로 안나오네요.
어디 부분이 문제인지 좀 알려주세요.
#includestdio.h
#includestdlib.h
#includetime.h
#define SIZE 6
void sort(int *number);
int main()
{
int number[SIZE]={0},i=0;
sort(number);
printf(재정렬된 숫자 : );
for(i=0;iSIZE;i++){
 sp;printf(%d ,number[i]);
}
printf(\n);
}
void sort(int *number)
{
int i,j=0,temp=0,rand_num=0;
srand(time(NULL));
for(i=0;iSIZE;i++){
rand_num=rand()%45+1;
for(j=0;ji;j++){
if(*(number+j)==rand_num){
i--;
break;
}
else
*(number+i)=rand_num; // 이부분에 난수 대입 시키면 중복은 안되는데 0번째 배열값이 0으로 초기화
} // 이 아래에 넣으면 중복값이 계속 발생
}
printf(정렬전 숫자 : );
for(i=0;iSIZE;i++){
printf(%d ,*(number+i));
}
printf(\n);
for(i=0;iSIZE;i++){
for(j=i+1;jSIZE;j++){
if(*(number+i)*(number+j)){
temp=*(number+i);
*(number+i)=*(number+j);
*(number+j)=temp;
}
}
}
}