Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Referencja

Ostatnio zmodyfikowano 2010-12-12 23:44
Autor Wiadomość
Tymek
Temat założony przez niniejszego użytkownika
Referencja
» 2010-12-12 23:32:29
Zadanie 4
Napisz program definiujący typ osoba (imie, nazwisko, adres-struktura(miasto, kod, ulica, numer domu)),
wczytujący dane N osób z klawiatury. Zdefiniuj formalną funkcję zmiana, której argumentem jest
referencja do zmiennej typu osoba, zmieniająca nazwisko osoby. Wypisz wyniki na ekranie

C/C++
#include <iostream>
using namespace std;

struct adres
{
    char ulica[ 30 ];
    char miasto[ 30 ];
    int numer_domu;
    int kod_pocztowy;
};
struct osoba
{
    char nazwisko[ 20 ];
    char imie[ 20 ];
    adres a;
    void wczytaj();
    void wypisz();
};

void osoba::wczytaj()
{
    cout << "Podaj nazwisko: ";
    cin >> nazwisko;
    cout << "Podaj imie: ";
    cin >> imie;
    cout << "Podaj ulice: ";
    cin >> a.ulica;
    cout << "Podaj miasto: ";
    cin >> a.miasto;
    cout << "Podaj numer domu: ";
    cin >> a.numer_domu;
    cout << "Podaj kod pocztowy: ";
    cin >> a.kod_pocztowy;
};

void osoba::wypisz()
{
    cout << "Nazwisko" << nazwisko << endl;
    cout << "imie" << imie << endl;
    cout << "ulice" << a.ulica << endl;
    cout << "miasto" << a.miasto << endl;
    cout << "numer_domu" << a.numer_domu << endl;
    cout << "kod pocztowy" << a.kod_pocztowy << endl;
};

int main()
{
    cout << "Podaj ilosc osob";
    int a;
    cin >> a;
   
    osoba baza[ a ];
   
    for( int i = 0; i < a; i++ )
    {
       
        cout << "Podaj dane osoby " << i + 1 << endl;
        baza[ i ].wczytaj();
    }
   
    system( "pause" );
}
Czy może ktoś mi wytłumaczyć tą referencje??
P-25114
Tymek
Temat założony przez niniejszego użytkownika
» 2010-12-12 23:38:53
wyobrażam narazie to sobie w ten sposób
C/C++
#include <iostream>
using namespace std;

struct adres
{
    char ulica[ 30 ];
    char miasto[ 30 ];
    int numer_domu;
    int kod_pocztowy;
};
struct osoba
{
    char nazwisko[ 20 ];
    char imie[ 20 ];
    adres a;
    void wczytaj();
    void wypisz();
    void zmiana( char nazwisko, char & nazwisko );
};

void osoba::wczytaj()
{
    cout << "Podaj nazwisko: ";
    cin >> nazwisko;
    cout << "Podaj imie: ";
    cin >> imie;
    cout << "Podaj ulice: ";
    cin >> a.ulica;
    cout << "Podaj miasto: ";
    cin >> a.miasto;
    cout << "Podaj numer domu: ";
    cin >> a.numer_domu;
    cout << "Podaj kod pocztowy: ";
    cin >> a.kod_pocztowy;
};

void osoba::wypisz()
{
    cout << "Nazwisko" << nazwisko << endl;
    cout << "imie" << imie << endl;
    cout << "ulice" << a.ulica << endl;
    cout << "miasto" << a.miasto << endl;
    cout << "numer_domu" << a.numer_domu << endl;
    cout << "kod pocztowy" << a.kod_pocztowy << endl;
};

void osoba::zmiana( char & nazwisko )
{
    char nazwisko = Bolek;
};
int main()
{
    cout << "Podaj ilosc osob";
    int a;
    cin >> a;
   
    osoba baza[ a ];
   
    for( int i = 0; i < a; i++ )
    {
       
        cout << "Podaj dane osoby " << i + 1 << endl;
        baza[ i ].wczytaj();
    }
   
    for( int i = 0; i < a; i++ )
    {
       
        cout << "Podaj dane osoby " << i + 1 << endl;
        baza[ i ].zmiana();
    }
   
   
   
    system( "pause" );
}

ale jest źle...
P-25115
ison
» 2010-12-12 23:44:01
C/C++
void zmiana( osoba & os ) {
    cout << "Podaj nazwisko: ";
    cin >> os.nazwisko;
    cout << "Podaj imie: ";
    cin >> os.imie;
    cout << "Podaj ulice: ";
    cin >> os.a.ulica;
    cout << "Podaj miasto: ";
    cin >> os.a.miasto;
    cout << "Podaj numer domu: ";
    cin >> os.a.numer_domu;
    cout << "Podaj kod pocztowy: ";
    cin >> os.a.kod_pocztowy;
}

C/C++
zmiana( baza[ i ] );

art o referencji: http://cpp0x.pl/artykuly/?id=23
P-25116
« 1 »
  Strona 1 z 1