这个C代码应该创建一些随机数并打印出来,然后对它们进行排序并再次打印,但它只是打印排序后的数字有人能帮我吗?

    #include <stdio.h>
    #include <time.h>
    #include <stdlib.h>
    int main(){
        int i, j, k;
        float temper;
        time_t t;
        float grades[1000];
        fflush(stdout);
        printf("Here are the number\n");
        srand(time(&t));
        for(i=0;i<1000;i++){
            grades[i]=rand();
            printf("%f\n", grades[i]);
        }
        for(i=0;i<1000;i++){
            int swap=0;
            for(j=i;j<1000;j++){
                if(grades[i]>grades[j]){
                    temper=grades[i];
                    grades[i]=grades[j];
                    grades[j]=temper;
                    swap=1;
                }
            }
        }
        printf("sorting is done");
        for(i=0;i<1000;i++){
            printf("%f\n", grades[i]);
        } }

最佳答案

你的程序运行正常试着把每样东西从1000个改为10个,这样你就可以自己测试和观察了。
正在发生的事情是,它打印出的一切如此之快,第一个1000页是离开了页面。

关于c - printf不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33272489/

10-11 21:20