Strukturované datové typy - Studenti
2 posters
Forum Apl Inf :: C
Strana 1 z 1
Strukturované datové typy - Studenti
neni to sice hotový ale at tu neco pribyde
- kód:
#include <stdio.h>
#include <stdlib.h>
typedef struct{
int den, mesic, rok;
} datum;
typedef struct{
char jmeno[20], prijmeni[20]; int narozen;
} student;
int porovnej_vek(student, student);
int main()
{
int j,a;
student s1,s2;
printf("Zadejte jmeno :");
scanf("%s", &s1.jmeno);
printf("zadejte prijmeni :");
scanf("%s", &s1.prijmeni);
printf("zadejte rok narozeni : ");
scanf("%d", &s1.narozen);
printf ("\n \n");
printf("Zadejte jmeno :");
scanf("%s", &s2.jmeno);
printf("zadejte prijmeni :");
scanf("%s", &s2.prijmeni);
printf("zadejte rok narozeni : ");
scanf("%d", &s2.narozen);
printf ("\n \n");
j=porovnej_vek(s1,s2);
if(a=1) printf("%s %s je starsi nez %s %s", s2.jmeno, s2.prijmeni, s1.jmeno, s1.prijmeni);
if(a=0) printf("%s %s stejne stary jako %s %s", s2.jmeno, s2.prijmeni, s1.jmeno, s1.prijmeni);
if(a= -1) printf("%s %s je starsi nez %s %s", s1.jmeno, s1.prijmeni, s2.jmeno, s2.prijmeni);
printf("%i", a);
return 0;
}
int porovnej_vek(student s1, student s2)
{
int a;
if(s1.narozen<s2.narozen) a=1;
if(s1.narozen>s2.narozen) a= -1;
if(s1.narozen=s2.narozen) a=0;
return a;
}
Better studenti...
Tady je úprava Studentu..takto by to asi mělo vypadat cca
- kód:
#include <stdio.h>
#include <stdlib.h>
typedef struct datum {
unsigned int den;
unsigned int mesic;
unsigned int rok;
} Datum;
typedef struct student {
char jmeno[15];
char prijmeni[15];
Datum narozen;
} Student;
int porovnej_vek(const Student *s1, const Student *s2);
int main()
{
Student s1,s2;
printf("Zadejte jmeno: ");
scanf("%s", s1.jmeno);
printf("Zadejte prijmeni: ");
scanf("%s", s1.prijmeni);
printf("Zadejte datum narozeni(d/m/r): ");
scanf("%d %d %d", &s1.narozen.den, &s1.narozen.mesic, &s1.narozen.rok);
printf ("\n");
printf("Zadejte jmeno: ");
scanf("%s", s2.jmeno);
printf("Zadejte prijmeni: ");
scanf("%s", s2.prijmeni);
printf("Zadejte datum narozeni(d/m/r): ");
scanf("%d %d %d", &s2.narozen.den ,&s2.narozen.mesic,&s2.narozen.rok);
printf ("\n");
int vysledek = porovnej_vek(&s1,&s2);
if(vysledek > 0) {
printf("%s %s je starsi nez %s %s", s1.jmeno, s1.prijmeni, s2.jmeno, s2.prijmeni);
} else if(vysledek < 0) {
printf("%s %s je starsi nez %s %s", s2.jmeno, s2.prijmeni, s1.jmeno, s1.prijmeni);
} else if(vysledek == 0) {
printf("%s %s stejne stary jako %s %s", s2.jmeno, s2.prijmeni, s1.jmeno, s1.prijmeni);
}
getchar();
getchar();
return 0;
}
int porovnej_vek(const Student *s1,const Student *s2)
{
if(s1->narozen.rok > s2->narozen.rok || (s1->narozen.rok >= s2->narozen.rok && s1->narozen.mesic > s2->narozen.mesic) ||
(s1->narozen.rok >= s2->narozen.rok && s1->narozen.mesic >= s2->narozen.mesic && s1->narozen.den > s2->narozen.den)) {
return -1;
} else if(s1->narozen.rok == s2->narozen.rok && s1->narozen.mesic == s2->narozen.mesic && s1->narozen.den == s2->narozen.den) {
return 0
}
return 1;
}
adam.korinek- Poèet pøíspìvkù : 25
Join date : 18. 11. 14
Forum Apl Inf :: C
Strana 1 z 1
Povolení tohoto fóra:
Nemůžete odpovídat na témata v tomto fóru
|
|