#define LINE_SIZE 100 #define LIST_SIZE 75 #include #include #include #include struct pizza{ char name[LINE_SIZE]; float prize; }; struct pizza list[LIST_SIZE]; int read_item(struct pizza *item) { char line[LINE_SIZE]; char line2[LINE_SIZE]; if (!fgets(line, sizeof(line), stdin)) return 0; if (strlen(line) == 0) return 0; if (!fgets(line2, sizeof(line2), stdin)) return 0; char *endptr; float value = strtof(line2, &endptr); if (value == 0.0F) return 0; strcpy(item->name, line); item->prize = value; return 1; } int read_pizza_list(struct pizza* list){ int counter = 0; for (int i = 0; iprize; float prize2 = ((struct pizza*)b)->prize; int r2 = strcmp(((struct pizza*)a)->name, ((struct pizza*)b)->name); int r; if (prize1 < prize2){ r = -1; return r; } else if(prize1 > prize2){ r = 1; return r; } else{ return r2;} } int main(void){ int size= read_pizza_list(list); qsort(list, size, sizeof(struct pizza), compare_pizza); for(int i = 0; i