Informatică, întrebare adresată de q6s6chx27y, 8 ani în urmă

Se cunoaste datele la n persoane (n<=30): numele, ziua, luna, anul nasterii. Sa se scrie un program care afiseaza numele persoane nascute in anul a si numele persoanei care este cea mai tanara
IN LIMBAJ C VA ROG!!! Cu struct, fara cin si cout!!!!!

Răspunsuri la întrebare

Răspuns de ProTel
0

Răspuns:

#include <stdio.h>

int main() {

  struct persoana {

    char* nume;

    int ziua;

    int luna;

    int anul;

  };

 

  struct persoana p[100];

  int n,i,an,data,gasit,poz,max;

 

  printf("Numar de persoane:");//adaugare persoane

  scanf("%d",&n);

  for(i=0;i<n;i++){

    printf("P[%d].nume=",i);

    scanf("%s",&p[i].nume);

    printf("P[%d].ziua=",i);

    scanf("%d",&p[i].ziua);

    printf("P[%d].luna=",i);

    scanf("%d",&p[i].luna);  

    printf("P[%d].anul=",i);

    scanf("%d",&p[i].anul);    

 

 printf("\n");  

  }

 

    printf("Introduceti un an : ");

    scanf("%d",&an);  

 printf("Persoane nascute in anul %d \n",an);    

    gasit=0;//pp. ca nu exista persoana nascuta in anul an

       

 for(i=0;i<n;i++){  

     if (p[i].anul==an){

      gasit=1;

      printf("Nume:%s \n",&p[i].nume);

      printf("\n");

     }

 }

 if (gasit==0) printf("\nNu exista persoane nascute in anul %d \n",an);

 max=0;

    for(i=0;i<n;i++){

  data=p[i].ziua+p[i].luna+p[i].anul;  

     if (max<data) {

     poz=i;

     max=data;

 }

  }

 printf("Persoana cea mai tanara este %s ",&p[poz].nume);

}

Alte întrebări interesante