Zum Inhalt springen

hame

Mitglieder
  • Gesamte Inhalte

    44
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von hame

  1. hame

    einfach verkettet listen

    danke für den tipp erstmal. also wir schreiben ende januar eine klausur in c und da werden halt höchstwahrscheinlich listen dran kommen, es ist halt so das wir vorgegebene struktur haben und eine liste die z.B zahlen enthält und und diese liste sollen wir dann absuchen und eine in eine neue liste kopieren z.b in die erste hälfte die geraden und in der zweiten hälfte die ungerade zahlen. da wollt ich halt wissen wie man das am besten angeht da ich mich mit listen noch nicht so viel auseinander gesetzt haben. aber ich werde es erstmal alleine versuchen die aufgaben zu lösen. wenn ich dann hilfe brauche wende ich mich gerne wieder dem forum ^^.
  2. hame

    einfach verkettet listen

    @konsti4u, danke! hat er mir für den Anfang sehr viel fürs Verständis von verkettete listen gebracht. ich hab dann nur noch eine frage wenn ich eine liste sortieren soll, muss ich dann immer über jedes element gehn und dann es aussortieren und dann wieder neu sortieren? z.b wenn ich eine liste nach ungeraden und gerade zahlen sortiere?
  3. hame

    einfach verkettet listen

    was bedeutet: ->? hab damit noch nicht gearbeitet. ist das so etawas wie ein zeiger? haha. ich sollte vlt. vorher lesen und dann schreiben ^^
  4. hallo, kann mir jemand von euch ein gutes buch bzw ein gutes tutorial zum thema "verkettete liste" empfehlen, wo der ablauf bzw das schema dargestellt wird. Hilfreich wäre auch ein paar beispiele. danke schonmal im vorraus.
  5. hame

    string zählen

    also ich hab meinen algorithmus etwas umgeschrieben und rumprobiert und es funktioniert auf einmal allerdings hab ich da mal ne frege. hier erstmal der code: int werte[300] ={0}; int index; char string[200]; printf("Bitte geben sie einen Satz ein: \n"); fgets(string,sizeof(string),stdin); fflush(stdin); while ('\n' != ( index = getchar()) && index != EOF ) werte[index]++; for ( index = 0; index < 300; index++ ) if ( werte[index] != 0 ) printf ("%c : %d\n ", index, werte[index]); return 0; } und jetzt meine frage vorher hab ich die ganze zeit mit 25 im array gearbeitet und es ging nicht allerdings wenn ich den das array auf 256 bzw drüber setze funktioniert es auf einmal, wieso?
  6. hame

    string zählen

    int wert[25], index; char string[200]; for(index=0;index<25;index++) if(p[index] >='a' && p[index] <='z'){ wert[index] =string[index]; printf("%i mal %c\n", index, wert[index]); index++; } ich hab die andere variante weggelassen^^ kannst du mir hier vlt. nochmal helfen und zwar wird die anzahl der buchstabe nicht richtig gezähl und zugewiesen. was ist an meiner schleife falsch? irgendwie zählt er nur den index hoch aber nicht nicht die buchstaben. musste gerade feststellen, dass der algorithmus total falsch ist :/
  7. hame

    string zählen

    ahhh ok, jetzt versteh ichs, danke. aber ich könnte auch theoretisch wenn ich alle zeichen im string prüfen will mir ein array von 256 elementen alegen und dann über die den asci code das zeichen in ein int umwandeln und danach zählen und ausgeben?
  8. hame

    string zählen

    danke für den tipp mir ist jetzt eigentlich nur eins wichtig und zwar das verständis weil ich bei arrays total versage. Und zwar wenn ich das int array anlege muss ich es dann mit {'a','b','c'...'A','B',C'} initialisieren. mir ist auch die Groß-und Kleinschreibung ziemlich egal. mir gehts einfach nur ums Verständnis. ich hab nämlich bis jetzt immer mein index mit der anzahl des arrays intitialisiert und bin dann immer von vorn nach hinten bzw von hinten nach vorne durch gegangen ohne ein zweites array. ich hoffe du verstehst was ich meine.
  9. hame

    string zählen

    das ist mir schon klar das ich alle buchstaben hier zähle. aber ich kann doch nicht 26 zähler initialisieren um alles abzuklappern?! es gibt doch sicherlich eine schönere lösung. ich brauch doch sicherlich ein array?!
  10. hame

    string zählen

    was heißt erwünschtes verhalten.... Ich würde gerne wissen wie ich den abgesuchten buchstaben speicher. Und dann zu der Häufigkeit des Buchstabens über den Index ihn wieder ausgebe das wäre alles. Also dann alle buchstaben halt die in dem string vorkommen.
  11. hame

    string zählen

    vlt. gehts so einfacher main(int argc, char * argv[]){ int i; char string[200]; int anzahl; int len; printf("bitte etwas eingeben: \n"); //nur buchstaben im string// fgets(p,sizeof(p),stdin); len = strlen(p); for(index=anzahl=0; index<len; index++) { if (string >= 'A' && string <= 'Z' || string >= 'a' && string <= 'z') anzahl++; } printf("%i mal", anzahl, *****); //bei ***** soll der bestimmte buchstabe stehn // return 0; } wie mache ich das am besten ?
  12. hame

    string zählen

    also ich habs schon geschafft die zeichen zusammen zu addieren und und die Anzahl der zeichen auszugeben. ich hab auch ungefähr die schleife dafür die ich brauche um den den string zu durchlaufen. meine frage ist nun ob ich die zeichen in ein array speichern muss vorher bevor ich sie dann über den index abrufe. das funzt nicht so ganz?!
  13. hame

    string zählen

    hallo, hab ein kleines problem mit dem thema strings und arrays. wie zähle ich ein bestimmtes zeichen in einer zeichenkette und geb sie danach aus? also wenn ich einen bestimmten string übergeben bekomme, die häufigkeit der buchstaben angeben. wäre für einen ansatz sehr dankbar.
  14. ich hab jetzt mal ein bisschen rumprobiert und oben in der funktion meinem *ptr s zu gewiesen und bei *s++ den zeiger weggelassen und auf einmal funktioniert es ?!?! das mit dem einlesen mit scnaf hab ich nicht gewusst. hab jetzt die fgets verwedendet, danke für den tipp sieht jetzt so aus: #include <stdio.h> #include <string.h> void entfernen (char *s){ char *ptr = s ; while(*s != '\0') { if (*s != ' ') { *ptr++ = *s; } s++; } *ptr = '\0'; s=ptr; } main(){ char string[20]; fgets(string,sizeof(string),stdin); entfernen(string); printf("%s",string); return 0; }
  15. wieso bitte ist das falsch mit scanf?
  16. sorry das ich hier so viele poste, aber ich bin zum eresten mal in einem forum und kenn mich noch nicht so gut aus. also ich denke das irgendwas an den algorithmus nicht stimmt in meiner funktion. ich lass mir ja danach den string ausgeben in der printf. aber bei der ausgabe kommt nicht das raus was ich eingentlich vor hatte^^
  17. oke, war vlt ne blöde Überschrift.... hast du mich falsch verstanden oder ich dich. ich schreibe z.B bla bal. ich möchte das dieses Leerzeichen gelöscht wird und dann dann da steht: "blabla"
  18. kann mir mal jemand helfen. bin heute schon den ganzen tag am verzweifeln. ich hab folgendes problem.(bin noch ein neuling beim programmieren^^) ich will unten einen string eingeben und aus diesem string die leerzeichen löschen. irgendwie funktioniert meine funktion aber nicht. sie hört nach dem ersten leerzeichen auf?!?!?!? hier mal das programm: #include <stdio.h> #include <string.h> void entfernen (char *s){ char *ptr ; while(*s != '\0') { if (*s != ' ') { *ptr++ = *s; } *s++; } *ptr = '\0'; s = ptr; } main(){ char string[20]; printf("bitte etwas eingeben: \n"); scanf("%s", &string); entfernen (string); printf("%s", string); return 0; }

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...