witam podawałem już te zadanie ale okazało się że musze je zrobić w języku C a nie w paskalu .
zadanie:
Utworzyć tablicę (np. 4 elementy) Struktur zawierających imiona (tablica char) i numery telefonów (zmienna long). Przejrzeć tablicę metodą bezpośrednią (operator kropki) i pośrednią korzystając ze wskaźnika.
Zrobiłem go dwiema metodami ale proszę o sprawdzenie ponieważ nie jestem pewny czy dobrze.
#include <stdio.h>
#include <string.h>
struct dane
{
char imie[10];
long tel[3999999];
};
struct dane osoba[4];
struct dane *tosoba[4];
main()
{
int x;
printf(" ---Podaj imiona i telefony osob--- \n");
for (x=0; x<4;x++)
{
printf("\nOsoba nrmer: %d\n",x+1);
puts("Podaj imie: ");
scanf("%s",osoba[x].imie);
puts("Podaj telefon: ");
scanf("\n%d",osoba[x].tel);
}
printf("\n");
printf("Metoda bezposrednia\n\n");
getchar( );
for (x=0; x<4; x++)
printf("Osoba nr: %d imie: %s telefon: %d \n",x+1 ,osoba[x].imie, *osoba[x].tel);
struct dane *tosoba[4];
tosoba[x]=&osoba[x];
printf("\n---Wcisnij enter aby przejzec metoda posrednia---\n");
printf("\n");
getchar( );
for (x=0; x<4; x++){
tosoba[x]=&osoba[x];
printf("Osoba nr: %d Imie: %s telefon: %d \n", x+1, (*tosoba[x]).imie, *(*tosoba[x]).tel);
}
getchar( );
return 0;
}
Program jest zrobiony w Dev C++ 4.9.9.2