Anfängerproblem
-
Ich habe folgenden Quelltext:
#include <stdio.h>
int r,u,i;
main()
{
for(;;){
printf("Tippen sie hier den Radius ein:\n%1");
scanf("%i",r);
int calc(int r);
{
u=r*2*3,14159;
return u;
}
r=calc(r);
printf("Der Umfang des Kreises beträgt:",u);
}
}Das programm soll mir den Umfang des Kreises auswerfen, doch wenn ich nen Zahlenwert für den Radius eingebe, hängt es sich auf.
Danke für eure Hilfe
-
ansi c, kein c#
-
elise schrieb:
ansi c, kein c#
hä?
-
elise will dir sagen, das du C-Code in einem C#-Forum gepostet hast. Und das haut ja irgendwie nicht hin, oder? Du mußt deine Frage im C Forum fragen.
-
J3rk schrieb:
hä?
Das rundet den Eindruck ab.
Ich formulier es mal so:
Dies Forum hier C# (sprich Ciih schaaap), hier nix ANSI C. Jetzt geschnallt?Zu deinem Problem:
scanf erwartet bei %i die Adresse eines int.
-
ein Haufen arroganz.
Freundlich und zuvorkomment.
Voher soll das nu wissen
-
J3rk schrieb:
ein Haufen arroganz.
Freundlich und zuvorkomment.
Voher soll das nu wissenweil da steht C# und .net :p
-
#include <stdio.h> #include <stdlib.h> //Prototyp float calc(float); int main() { //Wenn du mit Kommazahlen arbeitest, dann nimm float oder double float radius; printf("Tippen sie hier den Radius ein:"); scanf("%f",&radius); printf("Der Umfang des Kreises betraegt:%f\n",calc(radius)); system("Pause"); //Main hat auch einen Rückgabewert return 0; } //Funktion nicht in Main definieren float calc(float r) { return r*2*3.14159; };