Empire hat geschrieben:Allso ich hab das jetzt so gelöst:
Hmm... okay... Dein Code enthält eine Dinge, die für einen C-Einsteiger absolut tabu sind. Das wäre das Goto.
Dann wäre da noch die Sache, die für C-Programmierer, egal ob Profi oder Einsteiger, tabu sind. Das wäre das scanf.
Eine Sünde ist es, Variablen durchzunummerieren.
UNd wenn man das alles rausnimmt, dann sieht der Code so aus:
Code: Alles auswählen
#include <stdio.h>
int s;
int main ()
{
printf ("Geben sie ihre Frage ein:");
return 0;
}
Ich würde sagen, nun haben wir eine gute Basis, um die fehlenden Teile zu ergänzen.
Zur Eingabe verwende bitte Systemfunktionen, also beispielsweise Ncurses unter Linux. C bietet Dir ansonsten keine wirklich brauchbaren Eingabemöglichkeiten.
Zu den durchgezählten Variablen: Nimm
ein Array: char ** worte;
Dirty Oerti hat geschrieben:zu goto:
bei manchen sachen die ich proggramiert hab geht es nocht anderst (höchstens mit funktionen aber das wär mir da zum ständlich)
auserdem hab ich so meine Prb mit schleifen (versuchs bitte net mir jetzt beizubringen)
Da ich schon viel mit goto gearbeitet habe und NIE prob damit gehabt
aber das is nebensache
*Kopf schüttel*
*Wo ist Xin? Du erklärst das immer so schön*
Der Code ist nicht wartbar, damit nicht weiterentwickelbar, nicht wiederverwendbar, schlecht lesbar und abgesehen davon ungefähr fünfmal größer als die Lösung des Problems, welches er nicht löst.
Dirty Oerti hat geschrieben:
Ich glaube nicht, dass du Sachen programmierst, die ohne ein GOTO nicht möglich werden. Ein GOTO kann man eigentlich IMMER durch Funktionen oder sinnvolleren Programmablauf ersetzen.
Gotos stecken überall. Man kann sie in C unstrukturiert nutzen (goto) oder strukturiert: (while, for, if, Funktionsaufrufe).
Dirty Oerti hat geschrieben:und er wäre sogar noch schneller (da kann dein Compiler evtl was für dich tun).
Schneller wäre er vermutlich nicht, eher langsamer, aber dafür fehleranfälliger.
Und da gilt es Prioritäten zu setzen: Lieber ein Problem geringfügig langsamer gelöst, als ein eine schnelle fehlerhafte Antwort.
Dirty Oerti hat geschrieben:GOTO ist wirklich ein Relikt, ich wage sogar zu behaupten, das GOTO wohl (hoffentlich) mal aus dem Sprachgebrauch verschwindet...
Zumindest als Schlüsselwort 'goto'.
Wozu brauchst Du die Aufteilung in Worte?
Wie sieht es damit aus, den Satz komplett einzulesen und dann z.B.
strtok zu verwenden?