سلام. ایراد این کد تو قسمت سویچ هست. بهتره با ایف بنویسید نه سویچ. یعنی عبارتهای شرطی ای که داخل کیس ها نوشتید رو فقط به شکل ایف و الس های پشت هم بنویسید.
چون اولا خود score از نوع اعشاری هست و وقتی وارد سویچ میشه به نوع صحیح تبدیل میشه.
دوما حاصل عبارات شرطی true و false هست که به حالت عدد صحیح میشه 1 و یا 0. که اگر تو مرحله ی کامپایل هم ارور نده (که میده، چون مقادیر کیس باید صریح و مشخص باشن) باز نتیجه اعداد یک تا بیست نمیشه. میشه صفر و یک. پس اگر بخاید به شکل سویچ بنویسید باید اولا score رو عدد صحیح فرض کنید ثانیا اعداد مورد نطر هر کیس رو پشت هم با کاما برای اون کیس بنویسید.
که به نظر if..else بهتره. مثال:

if (acore >20)
...
else if (score > 18)
...
else if (score > 16)
...
else if (score > 12)
...
else if (score > 10)
...
else
...