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]);
}