A
Dein Bubblesort stimmt nicht. Außerdem hast du die Zeiger nicht richtig beachtet und wo sie hinzeigen.
Am Anfang lässt du dummy und dummy2 auf das 1. Element zeigen. Was ist wenn das 1. Element von der Sortierung her das Größte ist? Es wird bei dir bis ganz hinten durchgereicht, wird also zum letzten Element in der Liste. dummy2 zeigt nun aber nicht mehr auf das 1. Element, sondern auf das letzte, da es ja von ganz vorne nach ganzen hinten durchgereicht wurde ;).
Kleiner Tipp, wie es einfach gehen könnte. Mach dir ein Array aus Zeigern. In diesem speicherst du dann deine Liste ab. Also im ersten Element des Arrays das erste Element aus deiner Liste im zweiten das zweite usw. Dieses Array sortierst du dann (wie dir beliebt; bubblesort, quicksort, ...sort). Nachdem das Array mit den Zeigern sortiert ist, machst du daraus wieder eine verkettete Liste.
Wahrscheinlich gibts noch eine leichtere Methode für verkettete Listen, aber dies ist eine Möglichkeit, die vielleicht leichter verständlich ist ;).