Спасибо за отклик. А куда этот блок печати пихать? Дело в том, что если закончится ввод с клавиатуры, то он не выйдет из
Код
while (scanf("%d", &a)==1)
а затребует еще чисел. Вследствие чего и возникает вопрос. Ведь если
Код
while(h)
{
printf("%d\n",h->data);
h=h->next;
}
ставить внутрь
Код
while (scanf("%d", &a)==1)
то ничего не выйдет, потому что в промежуточных шагах список еще не будет упорядоченный. Да и вообще, он много раз выведет одно и тоже.
А что не так с блоком, начинающимся с
Код
if(p->data>h->data)
Ткните пальцем, я просто может не вижу чего. Да, break нужно добавить, это я не углядел.