Vytvoreni pole – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Vytvoreni pole – C / C++ – Fórum – Programujte.comVytvoreni pole – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
STroM
~ Anonymní uživatel
2 příspěvky
25. 11. 2013   #1
-
0
-

Zdravim potreboval bych poradit, jak vytvorit pole do ktereho budu vkladat osoby.
Zadani zni:


 Vytvořte strukturu osoba, do které budete ukládat tyto informace o osobě: jméno, příjmení, adresa bydliště, datum narození, telefon a e-mail. Vytvořte pole, do kterého budete osoby ukládat.
 Napište tyto funkce: 
vytvor_seznam(osoba s[]) 
• která všechny prvky pole nastaví na tzv. nulovou osobu (všechny údaje „ „ nebo 0).  
osoba vytvor_osobu(char jmeno[], char prijmeni[], char adresa[], char den, char mesic, int rok, char telefon[], char email[]) 
atd atd. 


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

#define POCET 100

//zde bude definice výctového typu Bool a struktury osoba

osoba vytvor_osobu(char jmeno[], char prijmeni[], char adresa[], char den, char mesic, int rok, char telefon[], char email[])
{
    //doplnit kód
}

vytvor_seznam(osoba s[])
{
    //doplnit kód
}

vloz(osoba s[],osoba o)
{
//doplnit kód
}

Bool najdi_osobu(char kde[], char co[], osoba s[])
{
//doplnit kód
}

void tisk(osoba s[])
{
//doplnit kód
}

osoba nejmladsi(osoba s[])
{
//doplnit kód
}

main()
{
  osoba seznam_osob[100],o1,o2,o3,o;
    vytvor_seznam(seznam_osob);
    o1=vytvor_osobu("Alice","Pokorna","Holicka 62", 2, 1, 1992, "214 145 478", "alice.pokorna@email.cz");
    o2=vytvor_osobu("Pavel","Novak","tr. 17 listopadu 24", 13, 1, 1992, "654 784 478", "pavel.novak@seznam.cz");
    o3=vytvor_osobu("Ales","Maly","Holicka 62", 6, 5, 1989, "772 847 457", "ales.maly@upol.cz");
  vloz(seznam_osob,o1);
    vloz(seznam_osob,o2); 
    vloz(seznam_osob,o3);
    tisk(seznam_osob);

    if(najdi_osobu("jmeno", "Alice", seznam_osob)) printf("Alice nalezena.\n"); else printf("Alice nenalezena.\n");
    if(najdi_osobu("prijmeni", "Novotny", seznam_osob)) printf("Novotny nalezen.\n"); else printf("Novotny nenalezen.\n");

    o=nejmladsi(seznam_osob);
    printf("Nejmladsi osobou v seznamu je %s %s.\n",o.jmeno,o.prijmeni);
}

vazne bych potreboval poradit jen stim polem, dekuji za pomoc :))

Nahlásit jako SPAM
IP: 93.93.33.–
Reklama
Reklama
hlucheucho+10
Posthunter
25. 11. 2013   #2
-
0
-

1. vytvoř strukturu jako nový datový typ (pomocí typedef)
2. vytvoř pole tohoto datového typu, dělá se to stejně jako u jednoduchých typů char, int...

hu

Nahlásit jako SPAM
IP: 195.178.67.–
STroM
~ Anonymní uživatel
2 příspěvky
25. 11. 2013   #3
-
0
-

#2 hlucheucho
strukturu mam vytvorenou a to pole udelam jako typedef s []  ? .... mozna jsem to spatne napsal, ale spis mam problem jak ty osoby do toho pole ulozit.... zkratka nevim jak to udelat, abych stim polem mohl dale pracovat vtech funkcich vytvor_seznam, vytvor_osobu a atd :)) 

Nahlásit jako SPAM
IP: 93.93.33.–
hlucheucho+10
Posthunter
25. 11. 2013   #4
-
0
-

 K položkám struktury přistupuješ pře tečku - ve tvaru proměnná.položka, pokud máš ukazatel na strukturu použiješ -> tzn proměnná->položka.

typedef struct {
char jmeno[128];
int vek;
} osoba;

//jednoducha promenna
osoba nekdo;
osoba *poi;

//pole
osoba lidi[3];

//pouziti:
nekdo.vek = 37;
strcpy(nekdo.jmeno, "Jirka");

poi = &nekdo;
poi->vek = 48;

lidi[1].vek = 25;
strcpy(lidi[0].jmeno, "Ferda");

snad je to bez chyb

hu

Nahlásit jako SPAM
IP: 195.178.67.–
krofik0
Duch
1. 12. 2013   #5
-
0
-

Jak napsat tu funkci nejmladší když je tam datum..  s tím nemám doposud zkušenosti. Mohl by někdo poradit?

Nahlásit jako SPAM
IP: 188.175.129.–
krofik0
Duch
1. 12. 2013   #6
-
0
-

Nejakym zpusobem napsat funkci která zjistí nejmladší datum, když to tak řeknu. Jestli se na to použije knihovna time.h tak fakt nwm jak to udělat.

Nahlásit jako SPAM
IP: 188.175.129.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 100 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý