#include <stdio.h>
#include <stdlib.h>int main()
{
int num;
int *a;
int i;
int j;
int tmp;
int n = 0;
printf("please input a number of random numbers:\n");
scanf("%d",&num);
a = (int*)malloc(num * sizeof(int));
printf("the random numbers is\n");
for(i = 0; i < num; i++)
{
a[i] = rand() % 1000 +1;
printf("%d ",a[i]);
for(j = 0; j < i; j++)
{
if(a[i] < a[j])
{
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
}
}
}
printf("\n");
for(i = 0; i < num; i++)
{
if(a[i] == a[i+1])
{
n++;
}
}
printf("the number of no repeated random number is\n");
printf("%d\n",num - n);
printf("sort random number is\n");
for(i = 0; i < num; i++)
{
if(a[i] != a[i+1])
{
printf("%d ",a[i]);
}
}
printf("\n");
free(a);
return 0;
}
排序用的是最简单的,感觉自己程序有点啰嗦。欢迎大家给出想法。
一个在努力中的未来程序员,如果有更好的算法,欢迎评论。
一个在努力中的未来程序员,如果有更好的算法,欢迎评论。