Was ist da Falsch???
-
es ändert sich nichts das programm bricht immer noch am gleichen ort ab
-
das ist möglich das die verschidene kompeiler das anders machen.
aber es sted doch da x=x setzen da bleibt x ja x und danach x++ also x=x+1 also wirt x immer hochge zahlt.
MFG TaccoGo
-
das müsste doch bei auf die eingabe warten oder?
was für ein kommpeiler nutz du den??
MfG TaccoGo
-
devc++
-
0xdeadbeef schrieb:
TaccoGo schrieb:
x=x++; ist zwar komisch geschriben aber x bleibt nicht 1 sonder zählt ganz mormal hoch wie als wen nur x++ dastend.
Nein. Was x=x++ macht, kann von Compiler zu Compiler unterschiedlich sein. In diesem Fall steht da x=x, wenn der Compiler das Postinkrement als atomisch auffasst.
Genau und deshalb inkrementiert man es Präfix!!!
x=++x oder man schreibt:
x++ oder x+=1 was genau die selbe Auswirkung hat!
mfg hohesC
-
was heist das den aus geschriben (ich kenne die abkürzung nicht)?
den mit meine kommpeiler get das. ich habe micrasoft visuel c++6.0.
MfG TaccoGo
-
TaccoGo schrieb:
was heist das den aus geschriben (ich kenne die abkürzung nicht)?
den mit meine kommpeiler get das. ich habe micrasoft visuel c++6.0.
MfG TaccoGo
Nicht micrasoft visuel sondern Microsoft Visual C++ Compiler
Leg dir mal ein Wörterbuch zu!
-
Übrigens ich nutz einen Watcom Compiler!
-
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')