Arrays Sortieren in C

Gast #4446386
Lesenswert?
• ▲
▼
Hallo,

ich lerne gerade für meine Informatik-Klausur und hänge bei einer 
Aufgabe:

Ich soll eine Funktion erstellen, die Werte vom Typ float eines Arrays 
der Größe nach sortiert (1. Element = größter Wert). Es sollen nur 
lokale Variablen und zwei verschachtelte For-Schleifen benutzt werden.

meine Idee war:
1
#include <stdio.h>
2
int x, i, j;
3
float a[100];
4
float Sort(int a[], int n);
5

6
void main(void)
7
{
8
  for (i=0;i<=100;i++) {
9
   printf("%f\n",Sort(i));
10
                       }
11
}
12

13
float Sort(int a[], int n)
14
{
15

16
for (i=1; i< n; ++i) // Array an Position i teilen
17
{
18
                                       // x = a[i]  einzuordnendes Element
19
for (x=a[i]; x<a[j] && (j>=0); j=i-1) // a[i] solange nach links schieben
20
                                      // bis an der richtige Stelle
21
{
22
a[j+1] = a[j]; // linker Nachbar nach rechts verschieben
23
j--;
24
}
25
a[j+1] = x; //Einfuegen an richtiger Position
26
return x;
27
}
28
}

Habt ihr Verbesserungsvorschläge?

MfG Dennis
Gast #4446430
Lesenswert?
• ▲
▼
Dennis schrieb:
> da habe ich einen Fehler gemacht.

das war aber nicht der letzte
1
;
2
int x;
3
x=a[i]; 
4
a[j+1] = x;

das bleibt von dem float aber nicht viel übrig.

Und vergib sinnvolle Variablen Namen, sonst verliert man den überblick. 
x oder a also globale Variabel geht ja mal gar nicht.
Gast #4446431
Lesenswert?
• ▲
▼
Dennis schrieb:
> Habt ihr Verbesserungsvorschläge?

Ich interpretiere mal.
Du hast eine Hausaufgabe aber keine Lust die zu machen.

Also kopierst du irgendwas aus dem Internet zusammen, das sich nicht mal 
übersetzen lässt, weil du natürlich weisst, das hier nur geholfen wird, 
wenn man selbst auch Initiative zeigt.

Aber du hättest zumindest noch soviel Eigenarbeit reinstecken müssen, in 
deiner IDE den Menüpunkt für das automatische einrücken zu finden und 
das Programm compilierbar zu machen.

Dann hätten wirs vieleicht nicht gemerkt.
Gast #4446432
Lesenswert?
• ▲
▼
Der Andere schrieb:
> Aber du hättest zumindest noch soviel Eigenarbeit reinstecken müssen, in
> deiner IDE den Menüpunkt für das automatische einrücken zu finden und
> das Programm compilierbar zu machen.

ich vermute mal stark, das es mit TAB eingerückt ist. Dann sieht es im 
web immer anders aus. Darüber könnte man noch hinwegsehen, wenn es 
wenigsten vom Compiler verstanden wird.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.