#include
#include
#include
#include
int main(void)
{
int a[10], i, j, k;
srand(time(NULL));
printf("┏━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┓");
printf("\n");
for (i = 0;i < 10;a[i++] = rand() % 100);
for (i = 0;i<10;i++)
{
for (k = i, j = k + 1;j<10;j++)
if (a[k]>a[j]) k = j;
if (i != k)
{
j = a[i];
a[i] = a[k];
a[k] = j;
}
printf("┃%3d ", a[i]);
}
printf("┃\n┗━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┛");
printf("\n");
_getch();
return 0;
}
生成随机数的里面,加个判断,和之前已经放入数组的元素进行比较判断。
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <conio.h>
int main(void)
{
int a[10], i, j, k;
srand(time(NULL));
printf("┏━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┳━━┓");
printf("\n");
for (i = 0;i < 10;i++)
{
a[i] = rand() % 100;
for(j=0;j<i;j++)
{
if(a[i]==a[j])
{
i--;
}
}
}
for (i = 0;i<10;i++)
{
for (k = i, j = k + 1;j<10;j++)
if (a[k]>a[j]) k = j;
if (i != k)
{
j = a[i];
a[i] = a[k];
a[k] = j;
}
printf("┃%3d ", a[i]);
}
printf("┃\n┗━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┻━━┛");
printf("\n");
_getch();
return 0;
}
思路就是生成的随机数和原来已经存存在的数进行比较,存在就不要加进去了
使用set进行存储去重