[ erweiterte Suche ]

»Eine kleine Änderung zerstört ein Programm aber wieso ?

Klassendurchschnitt errechenenNeues Thema eröffnenNeue Antwort erstellenDas Thema einem Freund empfehlenDas Thema druckenBrauche eure Hilfe .. brauche jemanden der C kann
Seite 1 von 1 [5 Beiträge]
AutorNachricht
Beobachter 

Anmeldedatum: 29.04.2011
Beiträge: 5
Chats: 7
29.04.2011, 19:43


Hallo liebe Mitglieder,
ich bin gerade dabei C zu lernen und muss sagen , dass ich mich eigentlich recht schnell eingearbeitet habe.

Ich habe ein einfaches Programm geschrieben , dass die Fakultaeten berechnet.

Genutzt habe ich eine for Schleife :

#include <stdio.h>
#include <stdlib.h>


int main()
{
int i;
int x;
int fak;

printf("Fakultaeten Rechenprogramm\n");
printf("Geben Sie eine Zahl ein um die Fakultaeten zu berechnen\n\n");

scanf("%d", &i);
fak=i;
;
for(x=i-(i-1);x<i;x++) /* Läuft praktisch so zb. 3! = 3*(3-1)*(3-2) */
{

fak = fak*x;


}
printf("Ergebnis : %d! = %d\n",i, fak);
system("pause");
return 0;
}

Meine eigentliche Frage ist :

Was macht der Compiler wenn ich fak=i; deklariere , bevor scanf(...) kommt?
Ich kriege total falsche Werte wenn ich zuerst fak=i; schreibe und dannach scanf(..)

Warum muss fak=i; also nach scanf (...) kommen?


Ich hoffe jemand kann mir weiter helfen

Gruß und ein Danke im Vorraus

Nach obenprofil pn
Junior 

Anmeldedatum: 03.05.2011
Beiträge: 76
Chats: 38
03.05.2011, 21:45


Deine Variablen sind beim anlegen undefiniert. D.h. sie enthalten u.U. irgendwelche Zufallswerte. Besser ist es ihnen bei der Deklaration gleich def. Werte mitzugeben, also z.B. so:

   Code:

int i=2;
int x=0;
int fak=0;


Wenn du erst fak=i machst, wird fak der Wert zugewiesen der beim Anlegen von int i angegeben ist, also ggf. auch undefiniert. Wenn du erst scanf machst bekommt fak den eingelesenen Wert von scanf und ist damit auf jeden Fall definiert.

Zuletzt bearbeitet von CppCoder am 03.05.2011, 21:53, insgesamt einmal bearbeitet
Nach obenprofil pn
Beobachter 

Anmeldedatum: 29.04.2011
Beiträge: 5
Chats: 7
03.05.2011, 21:51


@CppCoder

Ja das verstehe ich schon, aber mein x ist ja abhängig von i.
fak ist auch abhängig von i. Reicht es nicht , wenn i deffiniert wurde.

Probleme macht das ganze erst, wenn ich fak=i; deffiniere bevor scanf ( ) kommt.

Sobald ich fak = i nach scanf ( ) schreibe klappt alles wunderbar
Nach obenprofil pn
Junior 

Anmeldedatum: 03.05.2011
Beiträge: 76
Chats: 38
03.05.2011, 21:56


Habe meine erste Anwort noch mal ergänzt, ich glaube wir haben uns da gerade überlagert mit den Beiträgen.
Nach obenprofil pn
Beobachter 

Anmeldedatum: 29.04.2011
Beiträge: 5
Chats: 7
03.05.2011, 22:01


Oke verstanden klingt einleuchtend. Die Reihenfolge in der man bestimmte "Operationen" ist also doch enorm wichtig.

Nochmals vielen Dank!
Nach obenprofil pn
Gast 

03.05.2011, 22:01


Mach mit!

Wenn Dir die Beiträge gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:

    » Anmelden

Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...
Nach oben
Seite 1 von 1 [5 Beiträge]
Neues Thema eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:HitsLetzter Beitrag
Endstufe geht nicht an?? aber wieso... -.-
Hallo zusammen, ich habe mir heute das JVC KD-R421 gekauft und nu stehe ich vor dem problem das meine endstufe nicht mehr angeht das wäre die Phase Evolution RS 4. sicherungen habe ich alle gecheckt alle in Ordnung. ich habe eine kleine skizze auf dem...
von Smokee
592513.05.2011, 12:05
Ralf
Das alte thema Wasser aber wieso.. ?
Hallo Liebe Honda Fahrer...... :hrhr: So also ich habe im moment innen noch alles draussen da ich eigentlich lackieren wollte aber naja nichts desto troz musste ich den wagen fahren in den letzten tagen nach ein paar anderen probleme.. Letzen paar...
von Daniel.Werkman
826514.01.2011, 11:11
tmaey
Antenne EJ9 .... eine neue aber was für eine ???
so mir geht die antenne bei mir aufen nerv ... is die ganz draußen is die optik vom auto im eimer, is sie fast drin is der empfang nich so doll ... so kann man den nich eine andere Antenne einfach einbauen ... gibs welche für de scheibe, wenn ja...
von tuning_civic
3118721.12.2007, 15:21
tuning_civic
Programm um Videos auf eine Lautstärke zu regulieren.
Hi, habe ein Problem und zwar hab ich viele verschieden Videos jedoch haben alle eine andere Lautstärke das eine Leiser das andere Lauter, gibt es da ein Programm das ich es hin bekomme alle auf eine Lautstärke zu...
von hAiZa
05629.01.2009, 21:31
hAiZa
Eine kleine Frage
Also Ich hab vor meinen Ventildeckel neu zu lackieren weil er einfach schon extrem dreckig und abgefuckt ausschaut :!: Also was würdet ihr mir empfehlen ausbauen oder im Motorraum alles abkleben und drinnen lackieren ?? Und muss ich auf was...
Seite 2von -=Flo=-
16166127.06.2006, 16:14
Oli&Eddy
Auf ein Programm zugreifen?!?!
Hey leute, ich suche dauernd einen weg auf ein programm zu zugreifen und zu steruern bzw. aktionen ausführen. Genau genommen will ich auf ein online casino zugreifen und will das mir das programm die getroffenen zahlen im roulette zeigt und speichert und...
[Projekte]von polest
011915.08.2010, 19:18
polest
mal eine kleine felgen frage
heyho hatte diesen sommer jetzt 7x17 et38 (205/40) drauf jetzt wollt ich fragen ob ich 9x16 et15 (215/40) auch drunter bekomme. kannten sind schon...
von jack5288
27328.10.2008, 21:12
jack5288
Eine kleine Fragenliste zum MA9
Guten morgen alle zusammen! Seit gestern habe ich einen 96er Civic ma9, 1.5i 90ps unterm hintern. Rentnerfahrzeug, zweiter Besitzer, 105Tkm. Um das Auto ein wenig meinen Vorstellungen anzupassen, möchte ich erstmal ein paar Infos sammeln und freue...
von dg11
616701.12.2011, 10:07
p600trabant
suche ein fotobearbeitungs programm was mann kostenlos down.
wie der titel schon sagt kennt jemand ein gutes programm für fotos z.b zuverkleinern ,bearbeiten kann und so...
von Alex VTI6
3556918.08.2006, 16:53
*Sly*
Suche jemanden der mir ein programm schreibt
Hallo, ich suche jemanden der mir ein zusatzprogramm für virtual dj schreiben kann leider kenne ich mich mit dem programmieren selber nicht aus und als ich beim kundenservice von virtual dj gefragt habe ob die mir sowas machen könnten hies es...
[Allgemein]von Heco009
010724.11.2010, 13:03
Heco009
© 2004 - 2012 www.programmierer-forum.de (srv02) | Communities | Impressum