C 我的排序功能有什么问题?

C 我的排序功能有什么问题?,c,function,sorting,C,Function,Sorting,它似乎并没有对所有的数字进行排序。有些完全消失了 void sort () { int i = 0, l = 0; while(i < myclass.d_arr_size) { if(myclass.d_arr[i] <= myclass.d_arr[l]) { myclass.d_arr[i] = myclass.d_arr[l]; i++; } else (

它似乎并没有对所有的数字进行排序。有些完全消失了

void sort ()
{
    int i = 0, l = 0;

    while(i < myclass.d_arr_size)
    {
        if(myclass.d_arr[i] <= myclass.d_arr[l])
        {
            myclass.d_arr[i] = myclass.d_arr[l];
            i++;
        } else (l < myclass.d_arr_size) ? (l++) : (l=0, i++);
    }
}
void排序()
{
int i=0,l=0;
而(ii
索引

这可能不是代码中唯一的错误:)

\include
void main()
{
整数x,y,a,l,数字[30];
printf(“输入N\N的值”);
scanf(“%d”和“&l”);
printf(“输入数字”);
对于(x=0;x编号[y])
{
a=数字[x];
编号[x]=编号[y];
数字[y]=a;
}
}
}
printf(“按升序排列的数字如下\n”);
对于(x=0;x

此代码将按升序对数字进行排序

this=>
}否则(l
可能是错误的来源,而且不友好。请保持代码易于阅读,在
语句中调试将值设置为
myclass.d_arr[i]
myclass.d_arr[l]
,但是
myclass.d_arr[i]
的原始值似乎没有发生任何变化。这可能就是数字消除的地方。读得好:对不起,您不是在覆盖数据吗?您忘记调试它了。
myclass.d_arr[i] = myclass.d_arr[l];
#include <stdio.h>

void main()

{

    int x, y, a, l, number[30];

    printf("Enter the value of N \n");
    scanf("%d", &l);
    printf("Enter the numbers \n");
    for (x = 0; x < l; ++x)
        scanf("%d", &number[x]);
    for (x = 0; x < l; ++x)
    {
        for (y = x + 1; y < l; ++y)
        {
            if (number[x] > number[y])
            {
                a =  number[x];
                number[x] = number[y];
                number[y] = a;
            }
        }
    }
    printf("The numbers arranged in ascending order are given below \n");
    for (x = 0; x< l; ++x)
        printf("%d\n", number[x]);
}