Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define limit 50
- typedef struct data{
- int day, month, year;
- }Data;
- typedef struct candidate{
- int number;
- char name[limit];
- float grade; //%4.2f
- Data* birth;
- }Cand;
- Cand** allocCand(void){
- Cand **array;
- int i;
- array = (Cand**)malloc(sizeof(Cand*)*limit);
- for(i = 0; i < limit; i++){
- array[i] = NULL;
- }
- return array;
- }
- Data* fillData(int d, int m, int y){
- Data *da;
- da = (Data*)malloc(sizeof(Data));
- da->day = d;
- da->month = m;
- da->year = y;
- return da;
- }
- Cand* fillCand(char* name, float g, int dia, int mes, int ano){
- Cand *c;
- c = (Cand*)malloc(sizeof(Cand));
- strcpy(c->name,name);
- c->grade = g;
- c->birth = fillData(dia,mes,ano);
- c->number = rand() % 100000;
- return c;
- }
- void printCands(Cand **array){
- int i;
- for(i=0; array[i] != NULL; i++){
- printf("Nome do desgraçado: %s\n Numero de inscricao: %d\n Nota do filho da puta: %4.2f\n Data de Nascimento do Filho da Puta %d/%d/%d\n",array[i]->name,array[i]->number, array[i]->grade, array[i]->birth->day, array[i]->birth->month, array[i]->birth->year);
- }
- }
- void freeArray(Cand **array){
- free(array);
- }
- int main (void){
- Cand **v;
- v = allocCand();
- v[0] = fillCand("Rogério da Silva", 300.0, 4, 10, 2005);
- v[1] = fillCand("He Man do Nordeste", 953.4, 25, 12, 0000);
- v[2] = fillCand("Thiagao Abu Yassef", 999.98, 11, 9, 2001);
- printCands(v);
- freeArray(v);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement