Was ist da Falsch???
-
x = ++x ist aus ziemlich genau den selben Gründen auch nicht eindeutig definiert. Es ist kein Sequencepoint vorhanden, also ist nicht festgelegt, was zuerst gemacht wird.
Überhaupt - was soll derart kranker Code? Schreibt halt for(x = 1; x <= anzahl; ++x) { ... } und dann ist gut.
-
(In der Hoffnung die Diskussion zu beenden) :
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x=0,anzahl=0; float zahl=0.0, summe=0.0,mittelw=0.0; printf("AUFGABE 5\n"); printf("\nWieviele Zahlen moechten Sie eingeben?\n"); scanf("%i",&anzahl); printf("\n"); for(x=0; x<anzahl; x++){ printf("Bitte %i. Zahl eingeben:",x); scanf("%f",&zahl); summe+=zahl; } mittelw=summe/anzahl; printf("\n\nSumme der Zahlen =%f",summe); printf("\n\nDurchschnitt der Zahlen = %f\n",mittelw); system("PAUSE"); //ja, ich weiß, böse ;-) return 0; }
-
tja so geht das auch
-
dein Programm kommt genau gleich weit wie das vorher.
-
genau!!!
@GPC die lösung hab ich schon vorher gepostet!!!
Bevor man was schreibt sollte man die anderen Beiträge lesen!!!
Und die Programme in der CMDLINE zu starten finde ich sinnvoller!aber egal...
mfg hohesC
-
hast du auch ein linux system?
-
Ja mit Virtual PC!
Tja man ist halt schon im Nachteil wenn man nur Windows 95,98,2000,ME,XP usw.
kennt.
Ich erinnere mich noch an die DOS zeiten.....mein erster PC......mfg hohesC
-
also es liegt am #include <stdlib.h> ohne scheint es unter windows nicht zu funktionieren.
-
darf ich gleich nochmals ne frage stellen?
-
ja. aber wenns neues Tehma is mach n neuen Thread auf!
-
nene ein programm funktioniert nicht und zwar folgendes:
#include <stdio.h> #include <stdlib.h> #include <string.h> main(){ int i,Satz; int e = 0; char str[100] = ""; printf("\nBitte geben Sie einen Satz ein.\n"); scanf("%s",&str); for(i = 0; i < strlen(str); i++) { if(str[i] = 'e')e++; } printf("%d mal e\n", e); getchar(); return 0; }
Das Programm muss sagen wieviel mal ein e in einem string vorkommt.
-
if(str[i] == 'e')
-
if(str[i] = 'e')e++; muss if(str[i] == 'e')e++; sein!
zeigt dir dein Compiler keine Fehler mit Zeilen Angabe?@elise mist eine sekunde schneller
-
nein der meldet nichts wegen dem =.
das programm sieht jetzt im moment so aus läuft aber leide rnoch nicht. da muss noch irgendwo ein fehler stecken der der compiler nicht erkennt:
#include <stdio.h> #include <stdlib.h> #include <string.h> main(){ int i,Satz; int e = 0; char str[100] = ""; printf("\nBitte geben Sie einen Satz ein.\n"); scanf("%s",&str); for(i = 0; i < strlen(str); i++) { if(str[i] == 'e')e++; } printf("%d mal e\n", e); getchar(); return 0; }
-
versuch mal
int main()
bei mir läufts!
-
beim kollegen der linux hat läuft es auch nur unter dem scheiss windows läuft es nicht.
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ int i,Satz; int e = 0; char str[100] = ""; printf("\nBitte geben Sie einen Satz ein.\n"); scanf("%s",&str); for(i = 0; i < strlen(str); i++) { if(str[i] == 'e')e++; } printf("%d mal e\n", e); getchar(); return 0; }
-
Ich lasse es auch auf Windows laufen! unds tut auch!!!
mach mal
char str[100];
anstatt:
char str[100] = "";
Vielleicht hat dein Compiler mit irgendwas Probleme!
-
also unter cmd funktionierts. der e-zähler kommt aber nicht über die 1 herüber.
-
wenn ich die "" weglasse gibt der compiler eine fehlermeldung aus
-
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ int i,Satz; int e = 0; char str[100]; printf("\nBitte geben Sie einen Satz ein.\n"); scanf("%s",&str); for(i = 0; i < strlen(str); i++) { if(str[i] == 'e') { e++; } } printf("%i mal e\n", e); getchar(); return 0; }
Vielleicht so?