一个老六 2021-06-03 22:07 采纳率: 70.6%
浏览 21
已采纳

大佬大佬,救急救急!!!!

#include<stdio.h>
int shuzu[10];
int paixu(int p[]);
void main()
{
    printf("输入");
    for(int i = 0;i<10;i++)
    {
        scanf("%d",&shuzu[i]);
    }
    paixu(shuzu);
}
int paixu(int p[])//选择排序
{
      int leng=10,t,pos;
    for(int i =0,j;i<leng-1;i++)
    {
         pos=i;
        for(j= i+1;i<leng;j++)
        {
            if(p[pos]<p[j])
            {
                pos = j;
            }
        }
        if(i!=pos)
        {
            t = p[i];
            p[i]=p[pos];
            p[pos]=t;
        }
    }
    for(int i=0;i<leng; i++)
    {
         printf("%d",p[i]);
    }

}
//为什么这个程序什么结果都没有(这是一个将数据排序的程序)
  • 写回答

1条回答 默认 最新

  • CSDN专家-Time 2021-06-03 22:14
    关注
    #include <vector>
    #include <stdio.h>
    #pragma warning(disable:4996)
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <math.h>
    #include<stdio.h>
    int shuzu[10];
    int paixu(int p[]);
    int main()
    {
        printf("输入");
        for (int i = 0; i < 10; i++)
        {
            scanf("%d", &shuzu[i]);
        }
        paixu(shuzu);
        return 0;
    }
    int paixu(int p[])//选择排序
    {
        int leng = 10, t, pos;
        for (int i = 0, j; i < leng - 1; i++)
        {
            pos = i;
            for (j = i + 1;j < leng; j++)
            {
                if (p[pos] < p[j])
                {
                    pos = j;
                }
            }
            if (i != pos)
            {
                t = p[i];
                p[i] = p[pos];
                p[pos] = t;
            }
           
        }
        for (int i = 0; i < leng; i++)
        {
            printf("%d ", p[i]);
        }
        return 0;
    }

    第27行 for (j = i + 1;j < leng; j++) 

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?