myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

C Zeichenzählen

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 08.10.10, 17:25   #1
spartan-b292
Echter Freak
 
Benutzerbild von spartan-b292
 
Registriert seit: Mar 2010
Ort: /home/spartan-b292
Beiträge: 2.856
Bedankt: 1.701
spartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punkte
Standard C Zeichenzählen

Hallo,
ich muss für die FH ein C Programm schreiben und brauche dafür eine Funktion die folgende Aufgabe erfüllt:
Ein Text soll zeichenweise eingelesen und nicht in einem Feld gespeichert werden. Beim Einlesen werden die
Zeichen gezählt. Die entsprechenden Werte werden im Feld haeufigkeit abgelegt. Die Funktion soll die Gesamtzahl aller eingelesenen Zeichen zurückgeben. Das Einlesen soll mit dem Zeichen 26 ^Z beendet
werden.

Meine erste Idee war folgende:

Code:
int einlesen (int anzahl)
{
char eingabe;
char haeufigkeit[128];

printf("Bitte geben sie einen Text ein: \n");

eingabe = getchar();
anzahl++;
haeufigkeit[eingabe]++;

return (anzahl);
	
}
Meine Frage ist jetzt konkret, macht mein Code das was er soll, daenn ansonsten kann ich die anderen Funktionen schlecht schreiben, wenn er nicht genau das macht, was muss ich verändern? Wäre nett wenn ihr mir ein wenig helfen könntet!

Danke.
__________________
"They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety"
spartan-b292 ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 18:29   #2
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

prinzipell richtig, nur
a) es gibt 256 acii-zeichen
b) da fehlt eine schleife. z.b. while ...
__________________
entropie erfordert keine wartung
urga ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 18:49   #3
spartan-b292
Echter Freak
 
Benutzerbild von spartan-b292
 
Registriert seit: Mar 2010
Ort: /home/spartan-b292
Beiträge: 2.856
Bedankt: 1.701
spartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punkte
Standard

Danke, das mit den 128 Zeichen ist okay so, weil mehr nicht gezählt werden sollen. Und die while schleife brauche ich um? Mit einem bestimmten Zeichen die Eingabe zu beenden?
__________________
"They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety"
spartan-b292 ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 18:53   #4
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Danke, das mit den 128 Zeichen ist okay so
dann aber nicht wundern, wenn das program abstürzt, wenn du z.b. ein 'ö' eingibst.
Zitat:
Und die while schleife brauche ich um? Mit einem bestimmten Zeichen die Eingabe zu beenden?
bingo!
__________________
entropie erfordert keine wartung
urga ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 19:03   #5
Zachariass
Oldie
 
Registriert seit: May 2009
Beiträge: 43
Bedankt: 80
Zachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt PunkteZachariass leckt gerne myGully Deckel in der Kanalisation! | 4319640 Respekt Punkte
Standard

Mir stellt sich bei deinem Quellcode gerade die Frage ob du ein C oder ein C++ Programm schreiben musst...
Zachariass ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 19:46   #6
gosha16
Banned
 
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
gosha16 ist noch neu hier! | 0 Respekt Punkte
Standard

musst du da nach jedem Zeichen nen enter hinterherschieben?
gosha16 ist offline   Mit Zitat antworten
Ungelesen 08.10.10, 22:08   #7
spartan-b292
Echter Freak
 
Benutzerbild von spartan-b292
 
Registriert seit: Mar 2010
Ort: /home/spartan-b292
Beiträge: 2.856
Bedankt: 1.701
spartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punktespartan-b292 leckt gerne myGully Deckel in der Kanalisation! | 230828 Respekt Punkte
Standard

Zitat:
musst du da nach jedem Zeichen nen enter hinterherschieben?
Dazu gibt es keine genaue Angabe in der Aufgabendarstellung aber das Beispielbild der Ausgabe, welches in der Aufgabe zu sehen ist, sieht eher so aus als würden die Zeichen am Stück ohne Enter eingegeben.
__________________
"They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety"
spartan-b292 ist offline   Mit Zitat antworten
Ungelesen 09.10.10, 01:29   #8
gosha16
Banned
 
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
gosha16 ist noch neu hier! | 0 Respekt Punkte
Standard

also falls es wirklich am stück geschehen soll müsstest du Funktionen wie getch() [windows: conio.h unix: curses.h] verwenden.
gosha16 ist offline   Mit Zitat antworten
Ungelesen 09.10.10, 07:39   #9
germgerm
bla
 
Registriert seit: Mar 2010
Beiträge: 312
Bedankt: 302
germgerm ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von urga Beitrag anzeigen
dann aber nicht wundern, wenn das program abstürzt, wenn du z.b. ein 'ö' eingibst.
du musst beim prog immer vom worst case ausgehen, deswegen unbedingt eine abfrage einbauen, ob es innerhalb des arrays liegt. das gilt immer und allg.
germgerm ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 Uhr.


Sitemap

().