du2 - 4
This commit is contained in:
parent
48bfefad8c
commit
421f2ea58b
@ -2,7 +2,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#define LINESIZE 100
|
#define LINESIZE 200
|
||||||
#define MAXITEMS 100
|
#define MAXITEMS 100
|
||||||
|
|
||||||
// struktura pre polozku jed. listka
|
// struktura pre polozku jed. listka
|
||||||
@ -17,17 +17,24 @@ int read_pizza(struct pizza *item) {
|
|||||||
char line2[LINESIZE];
|
char line2[LINESIZE];
|
||||||
|
|
||||||
//nazov
|
//nazov
|
||||||
if (!fgets(line1, sizeof(line1), stdin)) return 0;
|
if (fgets(line1, sizeof(line1), stdin) == NULL) {
|
||||||
line1[strcspn(line1, "\n")] = 0;
|
return 0;
|
||||||
if (strlen(line1) == 0) return 0;
|
}
|
||||||
|
line1[strcspn(line1, "\n")] = '\0';
|
||||||
|
if (line1[0] == '\0') {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
//cena
|
//cena
|
||||||
if (!fgets(line2, sizeof(line2), stdin)) return 0;
|
if (fgets(line2, sizeof(line2), stdin) == NULL) {
|
||||||
line2[strcspn(line2, "\n")] = 0;
|
return 0;
|
||||||
|
}
|
||||||
|
line2[strcspn(line2, "\n")] = '\0';
|
||||||
|
|
||||||
float value = 0.0f;
|
float value;
|
||||||
if (sscanf(line2, "%f", &value) != 1) return 0;
|
if (sscanf(line2, "%f", &value) != 1) {
|
||||||
if (value == 0.0f) return 0;
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
strcpy(item->name, line1);
|
strcpy(item->name, line1);
|
||||||
item->price = value;
|
item->price = value;
|
||||||
@ -48,16 +55,17 @@ int compare_pizza(const void *a, const void *b){
|
|||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
struct pizza list[MAXITEMS];
|
struct pizza list[MAXITEMS];
|
||||||
memset(list, 0, sizeof(list));
|
int count = 0;
|
||||||
|
|
||||||
//nacitanie listka
|
//nacitanie listka
|
||||||
int count = 0;
|
|
||||||
while (count < MAXITEMS && read_pizza(&list[count])){
|
while (count < MAXITEMS && read_pizza(&list[count])){
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
//ukoncit ak ziadne polozky
|
//ukoncit ak ziadne polozky
|
||||||
if (count == 0) return 0;
|
if (count == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
//triedenie
|
//triedenie
|
||||||
qsort(list, count, sizeof(struct pizza), compare_pizza);
|
qsort(list, count, sizeof(struct pizza), compare_pizza);
|
||||||
|
Loading…
Reference in New Issue
Block a user