Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Fussballtabelle

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
19.05.2005, 14:56 Uhr
~croosy
Gast


Definieren Sie eine Struktur, die für jedes Team einer Fußballliga die folgenden Informationen aufnimmt:

1. Name des Teams
2. Anzahl der gewonnenen Spiele
3. Anzahl der verlorenen Spiele
4. Anzahl der Unentschieden
5. Torverhältnis

Schreiben Sie ein C-Programm, in dem diese Informationen für alle Teams einer Liga verarbeitet werden können. Speichern Sie diese Informationen in Feld fixer Größe von Strukturvariablen und sortieren Sie das Feld gemäß der Reihung der Vereine und geben Sie eine Rangordnung aus. Testen Sie das Programm an Hand einer aktuellen Ligastatistik.

Eingabe: Anzahl der Vereine, aktuelle Daten zu jedem Verein
Ausgabe: Sortierte Tabelle mit Gesamtpunktezahl für jeden Verein

Hier einen Ansatz.
Nur weiss ich nicht wie man die teams mit den gesamtpunkten ordnet.
Bitte um ansatz.
Danke.

C++:
#include <stdio.h>
#include <conio.h>

typedef struct {

    char name_team[50];
    int gewonnen_spiele;
    int verloren_spiele;
    int unentschieden_spiele;
    int geschossen;
    int bekommen;

}mannschaft;

int anz_teams(int anzahl, mannschaft *team);

int main(int argc, char *argv[]){

    mannschaft team[20];
    int size=0;
    
    

    if(argc!=1){

        fprintf(stderr,"Fehler.\n");

    }

    anz_teams(size, &team[0]);

    
    
    
    return 0;

}


int anz_teams(int anzahl, mannschaft *team){

    int i=0;
    int gesamtpoints=0;
    int tordiff=0;

    printf("Anzahl der Mannschaften: ");
    scanf("%d", &anzahl);

    for(i=0;i<anzahl;i++){

        printf("%d.Team: ", i+1);
        scanf("%s", &team->name_team[i]);

        printf("Win: ");
        scanf("\n%d", &team->gewonnen_spiele);
        team->gewonnen_spiele=team->gewonnen_spiele*3;

        printf("Unentschieden: ");
        scanf("%d", &team->unentschieden_spiele);
        team->unentschieden_spiele=team->unentschieden_spiele*1;

        printf("Lose: ");
        scanf("%d", &team->verloren_spiele);
        team->verloren_spiele=team->verloren_spiele*0;

        gesamtpoints=team->gewonnen_spiele+team->unentschieden_spiele+team->verloren_spiele;
        printf("\nGesamtpoints: %d\n\n", gesamtpoints);

        printf("Tore score: ");
        scanf("%d", &team->geschossen);

        printf("Tore gets: ");
        scanf("%d", &team->bekommen);

        tordiff=team->geschossen-team->bekommen;

        printf("Tordifferenz: %d\n\n", tordiff);






    }


    return 0;

}


Mfg.crossy

Dieser Post wurde am 19.05.2005 um 16:56 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.05.2005, 15:39 Uhr
Th



Dafür kannst du die Funktion "qsort" benutzen (ist in <stdlib.h> definiert).
Du mußt dann noch eine Sortierfunktion (Vergleichsfunktion) definieren, d.h. entsprechend der gewonnenen Spiele. Bei Gleichstand die unentschiedenen usw bis evtl. zur Tordifferenz vergleichen.

Ansonsten geht auch "Bubblesort" hierfür, einfach mal danach suchen...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.05.2005, 17:06 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


hilft dir das ?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: