[c] übergabe parameter

thehasso

Erfahrenes Mitglied
Hallo,


Ich hab mal kleines Problem... und zwar die eingabe funktioniert jedoch nicht die Ausgabe...



Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAX 30

struct adres {char vorname[MAX]; char name[MAX]; int alter; float gehalt;} adresse; // nicht  ( ; ) vergessen!

void output(struct adres * struct_ptr) // Ausgabe der Datensätze!
{
printf("\n\nSie gaben ein:\n\n");
printf("Vorname......%s:",(*struct_ptr).vorname); // struct_ptr->vorname ! auch eine möglichkeit & ohne klammer
printf("Nachname.....%s:",(*struct_ptr).name); // struct_ptr->name);
printf("Alter........%i:",(*struct_ptr).alter); // struct_ptr->alter);
printf("Gehalt.......%f:",(*struct_ptr).gehalt); // struct_ptr->gehalt);
}
//void input(adres * struct_eingabe)


int main(void)
{
	output(struct adres * struct_ptr);

		printf("\nVorname		:");
		printf("\nEingabe:"); fgets(adresse.vorname, MAX, stdin);

		printf("\n\nNachname	:");
		printf("\nEingabe:"); fgets(adresse.name, MAX, stdin);
		
		printf("\n\nAlter		:");
		printf("\nEingabe:"); scanf("%i",&adresse.alter, MAX, stdin);

		printf("\n\nGehalt		:");
		printf("\nEingabe:"); scanf("%f",&adresse.gehalt, MAX, stdin);


		return EXIT_SUCCESS;

}


gruß
 
Eher leicht.. :)

C++:
#include <stdio.h>
#include <stdlib.h>

#define MAX 30

struct adresse { char vorname[MAX]; char name[MAX]; int alter; float gehalt; };

char op( adresse *padr) {
     
printf("\n\nSie gaben ein:\n\n");
printf("Vorname......:%s",padr->vorname); 
printf("Nachname.....:%s",padr->name); 
printf("Alter........:%d\n",padr->alter); 
printf("Gehalt.......:%1.00f\n",padr->gehalt);
     
     }
     
     int main() {
     
     adresse padr;
      	printf("\nVorname		:\nEingabe:");
        fgets(padr.vorname, MAX, stdin);

		printf("\nNachname	:\nEingabe:"); 
        fgets(padr.name, MAX, stdin);
		
		printf("\n\nAlter		:\nEingabe:"); 
        scanf("%d",&padr.alter, MAX, stdin);

		printf("\n\nGehalt		:\nEingabe:"); 
        scanf("%f",&padr.gehalt, MAX, stdin);
        
        op(&padr);
         
         system("pause");
         EXIT_SUCCESS;
 
Hallo,


Ich hätte da noch ein Problem bei dem ich gerad eben nicht weiter komme...
Es sollen die umsätze eingelesen und ausgegeben werden. Ich denke ich hab die Parameter falsch übergeben .. bin mir noch unsicher bei funktionen.
und zwar:

Code:
#include <stdio.h>

void eingabe(float umsatz_unternehmen[12][2], char monate[12][12); //übergabeparameter
void ausgabe(float umsatz_unternehmen[12][2], char monate[12][12); //übergabeparameter

void main(void)
{
char monate[12][12] = {"Januar", "Ferbruar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember" }; 
float umsatz_unternehmen[12][2]; // zweidimensionales Umsatz 

    eingabe(umsatz_unternehmen, monate);
    ausgabe(umsatz_unternehmen, monate);
	return 0;
}

void eingabe(float umsatz_unternehmen[12][2], char monate[12][12])
{ 

int i;
int j;
int n = 11;
printf("\n\nHandelsfirma A & B GmbH\n\n"); 

  for(j=0;j<=1;j++)
    {
printf( "\nBitte geben Sie die Daten fuer das 1. Unternehmen ein:\n" );


        for(i=0;i<=n;i++)
		{
    
            printf("Bitte %i -ten Umsatz fuer %s 2007\n",i+1,monate[i]);  // Eingabe 
            printf("Eingabe:");
			scanf("%f",&umsatz_unternehmen[i]); 
        }

printf( "\nBitte geben Sie die Daten fuer das 2. Unternehmen ein:\n" );

        for(i=0;i<=n;i++)
		{
            
            printf("Bitte %i -ten Umsatz fuer %s %s 2007\n",i+1,monate[i]);  // Eingabe 
            printf("Eingabe:");
			scanf("%f",&umsatz_unternehmen[i][j]);
		}

}



}

void ausgabe(float umsatz_unternehmen[12][2], char monate[12][12])
{
int i;
float umsatz;
char monat;
printf("\n--------------------------------------------------------------------------------\n"); 
printf("\n+++++++++++++++++++:::Filiale 1:::++++++++++++:::Filiale 2:::+++++++++++++++++++\n");
printf("\n--------------------------------------------------------------------------------\n"); 
    for (i=0;i<=11;i++) 
    { 
	
        printf("%5i. %10s 2007 %10.2f",i+1 ,monate[i],umsatz[i][0]);  //Ausgabe Umsatz, Monat
        printf("%5i. %10s 2007 %10.2f",i+1 ,monate[i],umsatz[i][1]);  //Ausgabe Umsatz, Monat 
        printf("\n"); 
    }
printf("\n--------------------------------------------------------------------------------\n");

}

gruß hasso
 
Hallo,


Ich hätte da noch ein Problem bei dem ich gerad eben nicht weiter komme...
Der Umsatz bei der Eingabe wird nicht übergeben....
weiß jemand weiter?

Code:
#include <stdio.h>


void eingabe(float umsatz_unternehmen[12][2], char monate[12][12]); //übergabeparameter
void ausgabe(float umsatz_unternehmen[12][2], char monate[12][12]); //übergabeparameter

void main()
{
char monate[12][12] = {"Januar", "Ferbruar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember" }; 
float umsatz_unternehmen[12][2]; // zweidimensionales Umsatz 

    eingabe(umsatz_unternehmen, monate);
    ausgabe(umsatz_unternehmen, monate);
	return 0;
}


void eingabe(float umsatz_unternehmen[12][2], char monate[12][12])
{ 

int i;
int j;
int n = 11;
printf("\n\nHandelsfirma A & B GmbH\n\n"); 

  for(j=1;j<=1;j++)
    {
printf( "\nBitte geben Sie die Daten fuer das 1. Unternehmen ein:\n" );


        for(i=0;i<=n;i++)
		{
    
            printf("Bitte %i -ten Umsatz fuer %s 2007\n",i+1,monate[i]);  // Eingabe 
            printf("Eingabe:");
			scanf("%f",&umsatz_unternehmen[i]); 
        }

printf( "\nBitte geben Sie die Daten fuer das 2. Unternehmen ein:\n" );

        for(i=0;i<=n;i++)
		{
            
            printf("Bitte %i -ten Umsatz fuer %s 2007\n",i+1,monate[i]);  // Eingabe 
            printf("Eingabe:");
			scanf("%f",&umsatz_unternehmen[i]);
		}

}



}


void ausgabe(float umsatz_unternehmen[12][2], char monate[12][12])
{
int i;
float umsatz[12][2];
char monat[12][12];
printf("\n--------------------------------------------------------------------------------\n"); 
printf("\n+++++++++++++++++++:::Filiale 1:::++++++++++++:::Filiale 2:::+++++++++++++++++++\n");
printf("\n--------------------------------------------------------------------------------\n"); 
    for (i=0;i<=11;i++) 
    { 
	
        printf("%5i. %10s 2007 %10.2f",i+1 ,monate[i],umsatz[i][0]);  //Ausgabe Umsatz, Monat
        printf("%5i. %10s 2007 %10.2f",i+1 ,monate[i],umsatz[i][1]);  //Ausgabe Umsatz, Monat 
        printf("\n"); 
    }
printf("\n--------------------------------------------------------------------------------\n");

}

gruß hasso
 
Zuletzt bearbeitet:
Zurück