开发者社区> 问答> 正文

对学生成绩从高到低进行排序 选择冒泡排序或选择排序法 最后提交一个c文件

对学生成绩从高到低进行排序 选择冒泡排序或选择排序法 最后提交一个c文件

展开
收起
知与谁同 2018-07-18 11:50:30 2326 0
1 条回答
写回答
取消 提交回答
  • 方法一:冒泡法

    #include<stdio.h>
    int main()
    {
    int a[10],i,j,temp;
    printf("please enter 10 number\n");
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    for(i=0;i<10;i++)
    {
    for(j=0;j<9-i;j++)
    if(a[j]>a[j+1])
    {
    temp=a[j];
    a[j]=a[j+1];
    a[j+1]=temp;
    }
    }
    for(i=0;i<10;i++)
    {printf("%d",a[i]);
    printf("\n");}
    return 0;
    }
    方法二:选择法
    #include<stdio.h>
    int main()
    {
    int i,j,min,a[10],temp;
    printf("please enter 10 number\n");
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    for(i=0;i<10;i++)
    {min=i;
    for(j=i+1;j<10;j++)
    if(a[min]>a[j])
    min=j;
    temp=a[i];
    a[i]=a[min];
    a[min]=temp;
    }
    for(i=0;i<10;i++)
    {printf("%d",a[i]);
    printf("\n");
    }
    return 0;

    }

    -------------------------

    int a[10],i,j,k,temp;

    选择法:
    for(i=0;i<9;i++)
    { k=i;
    for(j=k+1;j<10;j++)
    if(a[k]<a[j]) k=j;
    temp=a[i];a[i]=a[k];a[k]=temp;
    }

    冒泡法:
    for(i=0;i<9;i++)
    for(j=0;j<9-i;j++)
    if(a[j]>a[j+1])
    {
    temp=a[j];a[j]=a[j+1];a[j+1]=temp;
    }

    2019-07-17 22:50:04
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载