For neuter nouns it is normal. It is «яблоки» which does not follow the pattern:
- яйцо́ → я́йца
- окно́ → о́кна
- полоте́нце → полоте́нца
- мо́ре → моря́
- о́блако → облака́
(eggs, windows, towels, seas and clouds respectively)
Note the Ц in полотенце; it forces а instead of я. It also forces the word to end in Е because spelling rules require that only Е, not О, can follow Ц if the syllable is not stressed.
Truth be told, I do not remember half of the combinations these rules prescribe at all. It all comes with experience. There is the way to optimise it, though:
- the rule about КГХ + ЖШЩЧ is the most important for a beginner, especially for К. Девочки, мальчики, кошки.... So many plurals to get wrong
- remember that for velars (К, Г, Х) these rules are phonological and affect pronuncaition. If you remember how the word is pronounced, trust your ears
- remember that for Ш, Ж, Щ, Ч, Ц the rules are just a historical spelling convention. Their palatalization is set in stone, so жя, шя, щя would be pronounced the same as жа, ша, ща — there is literally no other sound they can make.
- memorize a word to illustrate the spelling of a certain combination. For Ц, I think, яйцо́ (egg) and се́рдце (heart) will work
Easy. Яблоко is the exception in Russian (but in Ukrainian, the plural is indeed яблука).
This also happens for the majority of neuter and neuter-looking diminutive nouns produced with -ко, e.g. яблочко, городишко, окошко, ушко, домишко, колечко and even очко (but not облачко). They have -и in the plural; by the way, they are masculine if the original word is masculine.