#C Anfänger.
-
Hi zusammen,
habe folgendes Problem: möchte gerne das Spiel "Hangman" (im style für Arme) programmieren.
Ich bin jetzt soweit, das er mir die Anzahl zu erratenden buchstaben ausgibt.
Ich erkläre es an einem Beispiel:"Bitte geben Sie das zu erratende Wort ein:"
Wenn der user jetzt "hallo" eingibt, wird der Bildschirm automatisch gelöscht und es erscheint _ _ _ _ _ = Für "hallo"
Danach wird der user,Spieler, wie auch immer, aufgefordert, einen Buchstaben einzugeben.
Dieser Buchstabe wiederrum, soll mit dem eingegebenem Wort verglichen werden und bei Übereinstimmung der Strich durch den zustimmenden Buchstaben ersetzt.Aber wie mache ich es?
ich habe schon vieles versucht...
wort[i]==Buchstabe....blallbalbll
-
Du kannst den eingegebenen String in ein Char Array Convertieren(mit der Methode .ToCharArray[], schau mal bei autovervollständigung da muesste die "Rechtschreibung "dann zu sehen sein).
Und dann die einzelnen Buchstaben einfach mit dem "==" operator vergleichen.
-
Die String Klasse hat die Methode IndexOf. Dieser kannst du ein Zeichen bzw. auch einen ganzen String übergeben. Sie gibt dir die Position der !ersten! gefunden Übereinstimmung zurück. Zusätzlich kannst du der Methode einen int übergeben ab welcher Position gesucht werden soll.
Bsp.:
String str = "Hallo Welt"; int index = 0; while ((index = str.IndexOf('l', index)) != -1) // wenn nichts gefunden wird gibt IndexOf -1 zurück { MessageBox.Show("Index of 'l': " + index.ToString()); // Mach was mit dem Index. index++; //Wird um eins erhöht um die Suche nach der letzten gefundenen Position fortzusetzen. }
Hoffe das hilft
-
int x,y;
char wort[40];
char ausg[40];
char check;
scanf("%s",wort);
x= 0;
while(wort != 0){
ausg[x]= '_';
x++;
}
schleife------------------bis erraten
printf("Gib Buchstaben ein: ");
scanf("%c",check);
system("clear"); //system("cls") für windows
for(y= 0;y<x;y++){
if(check== wort[y]) //suche vorhandenen buchstaben im array
ausg[y]= check; //wenn vorhanden in ausgabewort einsetzen
printf("%c",ausg[y]); //ausgabewort zeichenweise ausgeben
}so irgendwie wirds schon gehen mit einem Zähler noch für die Versuche und einem für die Wortlänge die du schon weisst als Abbruchbedingung.
-
Klunex was hat dein C-Code mit C# zu tun?
-
vergesst den scheiss den ich hier gepostet habe. hab fälschlicherweise an C gedacht, bin jetzt schlauer geworden. sorry