Struct yapısı kullanıcı kayıt sorusu

Cevaplandı Kapalı
1
0

Merhabalar , üniversitemde verilen Quiz sorusunu yapamadım yardımcı olurmusunuz ?

Billab Quiz Sorusu

Teşekkürler .

  • You must to post comments
En iyi cevap
1
0

Merhaba semih.efe , çözümü şu şekilde yaptım ;


#include
#include
struct dogumTarihi{
int gun;
int ay;
int yil;
};
struct kayit{
char ad[20];
char telefon[20];
char kanGrubu[20];
struct dogumTarihi date;
}kayitlar[100];
int yasKontrol(struct kayit kayitlar){
int farkYil , farkAy , farkGun;
farkYil = 2019 - kayitlar.date.yil;
farkAy = 5 - kayitlar.date.ay;
farkGun = 15 - kayitlar.date.gun;

if(farkYil <18 ){
return 0 ;
}

else if(farkYil == 18){
if(farkAy<0){
return 0;
}
else if(farkAy ==0){
if(farkGun < 0){
return 0;
}
else{
return 1;
}
}
else{
return 1;
}
}
else{
return 1;
}

}
void bastir(char x[],int count){
for(int i=0;i<count;i++){
if(strcmp(x,kayitlar[i].kanGrubu)==0){
printf("-------------------------\n");
printf("Kullanicinin adi : %s\n",kayitlar[i].ad);
printf("Kullanicinin telefonu : %s\n",kayitlar[i].telefon);
printf("Kullanicinin kan grubu : %s\n",kayitlar[i].kanGrubu);
printf("Kullanicinin Dogum tarihi : %d-%d-%d \n",kayitlar[i].date.gun,kayitlar[i].date.ay,kayitlar[i].date.yil);
}
}
}

int main()
{
int i,kullaniciSayisi , eklenebilenSayi=0;
printf("Kac kullanici olusturmak istiyorsunuz : ");
scanf("%d", &kullaniciSayisi);

for(i=0; i<kullaniciSayisi ; i++){
printf("%d. Kullanicinin adini giriniz : ",(i+1));
scanf("%s",&kayitlar[i].ad);
printf("%d. Kullanicinin telefonunu giriniz : ",(i+1));
scanf("%s",&kayitlar[i].telefon);
printf("%d. Kullanicinin kan grubunu giriniz : ",(i+1));
scanf("%s",&kayitlar[i].kanGrubu);
printf("%d. Kullanicinin dogum tarihinin gununu giriniz : ",(i+1));
scanf("%d",&kayitlar[i].date.gun);
printf("%d. Kullanicinin dogum tarihinin ayini giriniz : ",(i+1));
scanf("%d",&kayitlar[i].date.ay);
printf("%d. Kullanicinin dogum tarihinin yilini giriniz : ",(i+1));
scanf("%d",&kayitlar[i].date.yil);
if(yasKontrol(kayitlar[i])){
eklenebilenSayi++;

}
else{
printf("Kullanicinin yasi 18 den kucuk kayit yapilamadi\n");
kullaniciSayisi++;
i--;
}
}
bastir("0+",eklenebilenSayi);
bastir("0-",eklenebilenSayi);
bastir("A+",eklenebilenSayi);
bastir("A-",eklenebilenSayi);
bastir("B-",eklenebilenSayi);
bastir("B+",eklenebilenSayi);
bastir("AB-",eklenebilenSayi);
bastir("AB+",eklenebilenSayi);
return 0;
}

 

Umarım işinize yaramıştır kolay gelsin 🙂

  • You must to post comments
1 sonuç gösteriliyor