Здравствуйте, уважаемые посетители форума! Я столкнулся с задачей по сортировке элементов массива по возрастанию и потерпел некоторый провал в ее решении
(Я ровно три недели программирую на С, если что.) Дан небольшой массив, который вводится с клавиатуры. Отсортировать его элементы по возрастанию и напечатать это дело.
Теперь о том, что у меня вышло. До того, как я столкнулся с этой программой, никаких алгоритмов по сортировке я не знал и сел писать свой
Идея была и есть, но вот реализовать ее не удалось - пришлось узнавать и использовать пузырьковый алгоритм. Итак - я сейчас принципиально не читал про остальные алгоритмы (знаю, они есть), а снова пробовал реализовать свою идею.
Код:
#include <stdio.h>
#include <math.h>
#include <locale.h>
int main (void)
{
int n,i,j,min,max,k;
char a[255];
char b[255];
setlocale(LC_ALL, "rus");
printf("Алгоритм сортировки 1.0 \n");
printf("n=");
scanf("%i", &n);
for(i=0;i<n;i++)
{
printf("a[%i]=",i);
scanf("%i", &a[i]);
}
for(i=0;i<n;i++)
{
max=a[0];
if(a[i]>max)
{
max=a[i];
}
}
k=a[0];
for(j=0;j<n;j++)
{
min=k;
for(i=0;i<n;i++)
{
if(a[i]<=min)
{
min=a[i];
a[i]=max+1;
}
}
b[j]=min;
}
for(j=0;j<n;j++)
{
printf("%i \n", b[j]);
}
return 0;
}
Этот код нерабочий, но надеюсь, что он все таки намекает, что я хочу сделать. Прошу мне помочь, подсказать,как, сохранив идею, реализовать сортировку.