Arrays und Funktionen
-
Hallo , ich will die Werte von Arrays in andere Funktionen übertragen.
mit integern geht es ja einfach z.B.
#include <stdio.h>
int auswahl(int a,int b)
{
printf("\nDie eingegebene Zahl:%d , %d\n",a,b);
}
int main (){
int a,b;printf("Zwei Zahlen eingeben\n");
scanf("%d%d",&a,&b);auswahl(a,b);
}Wie geht das gleiche mit der wiedergabe von Arrays?
Will jetzt die drei eingegebenen Zahlen aus dem Array in einer anderen Funktion ausgeben.
#include <stdio.h>
int main( void )
{
float zahl[2];
int i;for( i = 0; i < 3; i++ )
{
printf( "Bitte drei Zahlen eingeben: \n" );
scanf( "%f", &zahl[i] );
}}
So sieht mein Ursprungscode aus , muss die eingegeben Zahlen halt in einer anderen Funktion auflisten.
-
Genau so einfach:
#include <stdio.h> int auswahl(int a[]) { printf("\nDie eingegebene Zahl:%d , %d\n", a[0], a[1]); } int main () { int a[2]; printf("Zwei Zahlen eingeben\n"); scanf("%d%d",&a[0],&a[!]); auswahl(a); }
Du kannst in der Funktion aber nicht feststellen wie groß das Array ist.
Da in C bei Arrays aber die Adresse übergeben wird, kannst du in der Funktion auch den Inhalt vom Array ändern.
Das steht aber auch alles in einem Buch über C, das du dir unbedingt zulegen solltest.
-
MarioGTI schrieb:
float zahl[2]; int i; for( i = 0; i < 3; i++ ) {
Du hast ein Array mit 2 Elementen definiert. Das besagt die 2 zwischen den [].
Da der Index aber immer bei 0 beginnt, gibt es nur die Elemente zahl[0] und zahl[1].
Deine Schleife läuft zu weit.Hol dir unbedingt ein Buch.
Und nutze die Code-Tags unter den Smilies. Code markieren und auf den Button mit dem C klicken.
-
Schonmal danke für die Antworten , habt mir schon super weitergeholfen.