Я много раз запускал код, но не могу найти проблему.
#include <stdio.h>
int main()
{
int arr[] = {9,8,5,10,2};
int i, j, k, small;
scanf("%d", &k);
int n=5;
int asc[k];
if(k<n)
{
for(i=0; i<k; i++)
{
small=arr[i];
for(j=i; j<n; j++)
{
if(arr[j]<small)
{
small=arr[j];
}
}
asc[i]=small;
}
printf("%d", asc[k-1]);
}
return 0;
}
вывод должен вернуть k-й наименьший элемент. Также я создал массив «asc» для хранения наименьших элементов в порядке возрастания после каждой итерации внешнего цикла.
Выход - 2 каждый раз
Ожидается - когда вставлено любое значение (k) меньше n, оно должно вернуть k-й наименьший элемент.