产生不同的随机数

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

void Sort(int *p,int len);

int main()
{
    int a[1000]={0};
    int b[100];
    int i=0;
    int j=0;
    int k;
    int temp;
    char filename[20]="cfile5.txt";
    FILE *fp;
    clock_t start,finish;
    fp=fopen(filename,"a");
    srand((unsigned)time(NULL));
    start=clock();
    while(j<100){
        temp=rand()%1000;        //产生0-999的随机数,对应数组a的下标
        if(a[temp]==0){
            a[temp]=1;
            b[j]=temp+1;
            j++;
        }
    }
    fputc('\n',fp);
    fprintf(fp,"Before sorting:\n");
    int count=0;
    for(k=0;k<100;k++){
        if(k%10==0){
            fprintf(fp,"%-3d",b[k]);
        }
        else{
            fprintf(fp," %-3d",b[k]);
        }
        count++;
        if(count%10==0){
            fputc('\n',fp);
        }
    }
    Sort(b,100);
    fprintf(fp,"After sorting:\n");
    count=0;
    for(k=0;k<100;k++){
        if(k%10==0){
            fprintf(fp,"%-3d",b[k]);
        }
        else{
            fprintf(fp," %-3d",b[k]);
        }
        count++;
        if(count%10==0){
            fputc('\n',fp);
        }
    }
    finish=clock();
    fprintf(fp,"time used %g second.",(double)(start-finish)/CLOCKS_PER_SEC);          //执行时间太短了,哈哈
    fclose(fp);
    return 0;
}

void Sort(int *p,int len)
{
    int i;
    int j;
    int temp;
    for(i=0;i<len;i++){
        for(j=i+1;j<len;j++){
            if(p[i]>p[j]){
                temp=p[j];
                p[j]=p[i];
                p[i]=temp;
            }
        }
    }
}

运行结果:
在这里插入图片描述
在这里插入图片描述

发布了9 篇原创文章 · 获赞 1 · 访问量 188

猜你喜欢

转载自blog.csdn.net/howoldareyougg/article/details/105795844