C语言下生成5个不重复随机数(指定范围)并排序
适用于初学者,入门级
步骤/方法
- 01
#include <stdlib.h> #include <stdio.h> #include <time.h>
- 02
int main( void ) { int i,j,a[5],temp,t; loop1:srand((unsigned)time(NULL)); /*随机数*/ for(i=0;i<5;i++) { loop: temp=a[i]=rand()%33; /*随机范围*/ for(j=0;j<i;j++) if(temp==a[j]) goto loop; /*相同则返回重新随机*/ if(temp==0) goto loop; /*若=0也重新随机*/ else j++; } for(i=0;i<5;i++) /*显示*/ printf("%d\t",a[i]); printf("\n");
- 03
{ for(j=0;j<4;j++) /*进行9次循环,实现9次比较*/ for(i=0;i<4-j;i++) /*在每一趟中进行9-i次比较*/ if(a[i]>a[i+1]) /*相邻两个数的比较*/ { t=a[i]; a[i]=a[i+1]; a[i+1]=t; }
- 04
} for(i=0;i<5;i++) /*显示*/ printf("%d\t",a[i]); printf("\n"); getch(); /*停止*/ goto loop1; /*如果不满意,重复*/ }
赞 (0)