m0_59681373
2021-06-25 13:44
采纳率: 100%
浏览 41

编写从大到小排序输出从键盘无序输出的10个浮点数

编写从大到小排序输出从键盘无序输入的10个浮点数,要求:

使用动态内存分配存储键盘输入的浮点数

使用函数对数据进行排序,函数参数使用指针变量

排序结果在主程序中输出显示

  • 好问题 提建议
  • 收藏

1条回答 默认 最新

  • CSDN专家-link 2021-06-25 14:00
    已采纳

    malloc分配10个浮点数的数组,冒泡排序就行了

    void sort(float *f,int n)
    {
        int i,j;
        float t;
        for(i=0;i<n-1;i++)
            for(j=0;j<n-i-1;j++)
            {
                if(*(f+j) > *(f+j+1))
                {
                    t = *(f+j);
                    *(f+j) = *(f+j+1);
                    *(f+j+1) = t;
                }
            }
    }
    int main()
    {
        float *f = (float*)malloc(sizeof(float)*10);
        printf("请输入10个浮点数:");
        int i;
        for(i=0;i<10;i++)
            scanf("%f",f+i);
        sort(f,10);
        for(i=0;i<10;i++)
            printf("%f ",*(f+i));
        free(f);
        return 0;
    }
    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题