Untitled
unknown
plain_text
a year ago
2.6 kB
13
Indexable
#include <stdio.h>
#include <string.h>
#define NUM_STUDENTS 5
struct Student {
char vards[50];
char uzvards[50];
int vecums;
char grupa[10];
};
int salidzinat_vardus(const char *vards1, const char *vards2) {
return strcmp(vards1, vards2);
}
int salidzinat_grupas(const char *grupa1, const char *grupa2) {
return strcmp(grupa1, grupa2);
}
void kartotPecVecuma(struct Student studenti[], int n) {
struct Student temp;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (studenti[j].vecums > studenti[j + 1].vecums) {
temp = studenti[j];
studenti[j] = studenti[j + 1];
studenti[j + 1] = temp;
}
}
}
}
void kartotPecVarda(struct Student studenti[], int n) {
struct Student temp;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (salidzinat_vardus(studenti[j].vards, studenti[j + 1].vards) > 0) {
temp = studenti[j];
studenti[j] = studenti[j + 1];
studenti[j + 1] = temp;
}
}
}
}
void kartotPecGrupas(struct Student studenti[], int n) {
struct Student temp;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (salidzinat_grupas(studenti[j].grupa, studenti[j + 1].grupa) > 0) {
temp = studenti[j];
studenti[j] = studenti[j + 1];
studenti[j + 1] = temp;
}
}
}
}
void paraditStudentus(struct Student studenti[], int n) {
for (int i = 0; i < n; i++) {
printf("Vārds: %s, Uzvārds: %s, Vecums: %d, Grupa: %s\n",
studenti[i].vards, studenti[i].uzvards, studenti[i].vecums, studenti[i].grupa);
}
}
int main() {
struct Student studenti[NUM_STUDENTS] = {
{"Ainars", "Banchella", 22, "px22"},
{"Arnis", "Kaposts", 19, "px23"},
{"Aldis", "Kilograms", 21, "px24"},
{"Andris", "Svaigais", 20, "px22"},
{"Alfreds", "Stivais", 18, "px23"}
};
int izvele;
printf("Izvēlieties kārtošanu:\n1 - Kārtot pēc vārda\n2 - Kārtot pēc vecuma\n3 - Kārtot pēc grupas\n");
scanf("%d", &izvele);
if (izvele == 1) {
kartotPecVarda(studenti, NUM_STUDENTS);
} else if (izvele == 2) {
kartotPecVecuma(studenti, NUM_STUDENTS);
} else if (izvele == 3) {
kartotPecGrupas(studenti, NUM_STUDENTS);
} else {
printf("Nederīga izvēle!\n");
return 1;
}
paraditStudentus(studenti, NUM_STUDENTS);
return 0;
}
Editor is loading...
Leave a Comment