Uebungen "Abstimmung" Zeiger & Array

_BlueScreen

Grünschnabel
von der schule aus haben wir einen Auftrag bekommen, die Gesamtstimmenzahl eines Kandidaten mittel einer Funktion und zweidimensionales Array zu lösen..
Ich habe mal das Ganze von Funktion ausprobiert und es funktionierte doch ich bin mier nicht sicher wie ich es in einer Funktion einpacken soll..
Mein Code steht unten.. Hoffentlich steht ihr mein Fehler und können mir weiter helfen.
MFG

/*******************************************************************************
* Konstantendeklaration
/******************************************************************************/
#define KAN 8 // Konstate für Grenzwert des Arrays
#define GEM 25 // Konstate für Grenzwert des Arrays
/*******************************************************************************
* Funktionsdeklaration
*******************************************************************************/
void intro(); /* Funktion für Textausgabe am Anfang des Programms */
// Funktion welches Gesammtstimmenzahl rechnet
int CountTotalVotes(int Array[KAN][GEM], unsigned int CandidateNo);
/******************************************************************************/
int main(void){

int Array[KAN][GEM]; // Array wird mit Grenzbereich definiert
unsigned int CandidateNo; // Variable für Kandidaten-Nummer wird definiert
/* Intro */

/* Eingabe */
do{
printf("Bitte geben Sie den Kandidaten-Nummer ein: ");
scanf("%d", &CandidateNo); // Kandidaten-Nummer wird eingelesen
}
while((CandidateNo > 8)||(CandidateNo < 0));

/* Verarbeitung */
Array[CandidateNo][0] = CandidateNo;
int Pos = 0;
srand(time(0));
while(Pos < 26){
Array[CandidateNo][Pos] = rand()% 300; // Zufällige Werte werden zugewiesen
Pos++; // Position wird inkrementiert
}
CountTotalVotes(Array[KAN][GEM], CandidateNo)// Funktion welches Gesammtstimmenzahl rechnet
printf("\n\nGesammtstimmenzahl des Kandidaten betraegt : %d\n", Total);

system("PAUSE");
return(0);
}

// Funktions-Parameter & Funktionsname
int CountTotalVotes(int Array[KAN][GEM], unsigned int CandidateNo){
unsigned int Total = 0;// Variable für den Gesammtstimmenzahl wird initalisert
for(Pos = 1;Pos < 26;Pos++){
Total += Array[CandidateNo][Pos];
}
return(Total);
}
 
Hallo,

versuch doch mal bitte das Problem etwas genauer zu definieren, und vielleicht auch mehr auf Gramatik und Rechtschreibung zu achten, wobei man vermuten könnte, dass Deutsch evtl. gar nicht Deine Muttersprache ist?

Weiterhin wäre es weitaus übersichtlicher den Code wie gefordert in die Code-Tags zu stecken und nicht einfach da so hinzuploppen. ;-)

Wenn Du den / die Fehler nicht findest, kannst Du auch mal den Debug - Modus ausprobieren, (ich gehe jetzt mal davon aus, dass Du ein Visual Studio benutzt, das wäre nämlich auch eine interessante Information im einen oder anderen Fall).

Eine Sache ist mir sofort bei Deiner do-while Schleife aufgefallen,
nämlich übersetzt macht sie:

"Lasse solange Kandiaten eingeben, wie die Nummer des Kandidaten kleiner als 0 oder größer als 8 ist", da ist wohl was scheif gegangen.

Ich glaube Du solltest noch mal gründlich über Dein Programm nachdenken, und wenn du dann an einzelnen Stellen definitive Probleme hast, kannst Dich ja noch mal hier melden.

Gruß SunnyBunny.
 
Zurück