refresh
This commit is contained in:
parent
ae238ea384
commit
faf53e49f5
BIN
du2/output/program.exe
Normal file
BIN
du2/output/program.exe
Normal file
Binary file not shown.
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
struct pizza {
|
struct pizza {
|
||||||
char name[101];
|
char name[101];
|
||||||
float price;
|
float prize;
|
||||||
};
|
};
|
||||||
|
|
||||||
int read_pizza_list(struct pizza* list) {
|
int read_pizza_list(struct pizza* list) {
|
||||||
@ -24,10 +24,10 @@ int read_pizza_list(struct pizza* list) {
|
|||||||
if (fgets(line, sizeof(line), stdin)==NULL) {
|
if (fgets(line, sizeof(line), stdin)==NULL) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (sscanf(line, "%f", &item.price) !=1) {
|
if (sscanf(line, "%f", &item.prize) !=1) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
memcpy(&listok[i], &item,sizeof(struct pizza));
|
memcpy(&list[i], &item,sizeof(struct pizza));
|
||||||
counter +=1;
|
counter +=1;
|
||||||
}
|
}
|
||||||
return counter;
|
return counter;
|
||||||
@ -36,8 +36,26 @@ int read_pizza_list(struct pizza* list) {
|
|||||||
|
|
||||||
int compare (const void* a, const void* b) {
|
int compare (const void* a, const void* b) {
|
||||||
|
|
||||||
|
struct pizza* pizza_a = (struct pizza*)a;
|
||||||
|
struct pizza* pizza_b = (struct pizza*)b;
|
||||||
|
|
||||||
|
int result;
|
||||||
|
|
||||||
|
if (pizza_a->prize < pizza_b->prize) {
|
||||||
|
result=-1;
|
||||||
|
} else if (pizza_a->prize > pizza_b->prize) {
|
||||||
|
result=1;
|
||||||
|
} else {
|
||||||
|
result = strcmp(pizza_a->name, pizza_b->name);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
int main() {
|
int main() {
|
||||||
|
struct pizza list[LIST_SIZE];
|
||||||
|
int kolichestvo = read_pizza_list(list);
|
||||||
|
qsort(list, kolichestvo, sizeof(struct pizza), compare);
|
||||||
|
for (int i=0;i<kolichestvo;i++) {
|
||||||
|
printf("%s\n%f\n", list[i].name, list[i].prize);
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user