为了账号安全,请及时绑定邮箱和手机立即绑定

用指针对n个数进行排序怎么弄?

用指针对n个数进行排序怎么弄?

吃素的大灰狼 2015-12-25 08:32:39
 用函数实现,用指针对n个数排序
查看完整描述

1 回答

已采纳
?
0puppy0

TA贡献24条经验 获得超7个赞


 

int main()

{

    int * number;

    int * head;

 

    int length;

 

    int i;

    int temp;

    int j;

 

    printf("please input n (how many numbers):\n");

    scanf("%d",&length);

     

    head=number=(int *)malloc(length*sizeof(int));

    if(number==NULL)

    {

        printf("allocation fail\n");

        exit(1);

    }

    else

    {

        printf("allocation success\n");

    }

 

    printf("\n");

    for(i=0;i<length;i++)

    {

        printf("please input %d number:\n",i+1);

        scanf("%d",&temp);

        *number=temp;

        number++;

    }

     

    number=head;

    printf("\n");

 

    for(i=0;i<length;i++)

    {

        printf("%d number is:%d\n",i+1,*number);

        number++;

    }

    number=head;

    printf("\n");

     

    for(i=0;i<length;i++)

    {

        for(j=0;j<length-i-1;j++)

        {

            if(*(number+j)>*(number+j+1))

            {

                temp=*(number+j+1);

                *(number+j+1)=*(number+j);

                *(number+j)=temp;

            }

        }

    }

 

    number=head;

    printf("after sort:\n");

    for(i=0;i<length;i++)

    {

        printf("%d  ",*number);

        number++;

    }

    printf("\n");

 

    free(head);

 

    return 0;

}

   



查看完整回答
反对 回复 2016-12-29
  • 1 回答
  • 0 关注
  • 1645 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信