For each crate, the desk needs the item count and the weight together. A union would let one value overwrite the other. Use a struct so both fields remain available when you print the record.
struct Crate with int items and double kilograms; initialize one crate with 3 items and 2.5 kilograms. Print Crate: 3 items, 2.5 kg and a newline using the stored fields.A struct keeps both members; use crate.items and crate.kilograms with matching printf conversions.