it has to do with "dog" being indefinite noun. In English, you would put "a" or "an" before the word if it is indefinite. In Arabic, Tanwin or nunation [-(v)N] comes at the end of the word - (v) here stands for a vowel, it can be either A, I, or U, depending on the case of the word. Kalb-un here is an indefinite noun, in nominative case. Suppose I want to make this one definite (i.e. the dog), then it would be (الكلبُ: al-kalbu); The happy dog (الكلبُ السعيدُ), The dog is happy (الكلبُ سعيدٌ)
notice in the last example how the last word (the adjective) is detached and it gets Tanwin as well because now it is predicative and not attributive like in the other examples before.
Well, in Arabic, you cannot start a nominal sentence (sentences starting with nouns) with an indefinite noun, i.e. the subject of the sentence must be defined (except for very few exceptions under special conditions). Thus, to say "a dog is happy" you would be forced to change it to "the dog is happy" الكلب سعيد. Otherwise, if you leave it undefined, كلب سعيد it would be understood simply as a happy dog (and it is a phrase as well, not a full sentence).