@Uppgiven: Din tankegång verkar ju vara på ganska god väg.
Som jag förstår det så är din meny ett "interface" till din läskback "array".
Uppgiften verkar vilja att du ska ge en användare ett interface att lätt hantera en array.
Exempelvis dina metoder (som för övrigt verkar helt vettiga) tolkar jag såhär:
ADD_SODA - Borde lägga till en läsk i en tom plats i backen. Den borde meddela om backen är full och det inte får plats fler läsk.
CALC_TOTAL - Går genom backen och beräknar den totala summan av läsken som finns där i. Returnerar summan.
PRINT_CRATE - Går genom backen och skriver ut hur många använda platser och hur många tomma platser det finns.
AMOUNT_BOTTLES - Ger dig det totala antalet läsk som just nu finns i backen.
Dessa metoder måste ju självklart deklareras och definieras om de inte redan finns.
Ett alternativ till att skapa en string-array är en array av bools. Eftersom du vet den fasta storleken på backen (24) så kan du ju skapa upp en array med 24 platser. Varje plats håller en bool som är TRUE ifall platsen är tagen eller FALSE ifall platsen är tom.
Eftersom alla läsk-typer verkar kosta lika mycket så behöver du inte mycket mer information från varje plats.
När du sen behöver kontrollera platserna i backen så kan du enkelt loopa genom backen och se om en plats är tagen eller tom.
Resten kanske du kan klura ut själv?