I've spent a plurality of my programming life writing in C or C++, but both of these languages are simply terrible for a first language.
First question: why would someone starting programming be interested in "good memory management", considering they probably don't even know what that phrase means?
Why exactly should you learn C-style memory management in your first course? Remember that if you make a mistake in this area, you will get one of a variety of problems, often just a crash with no other piece of information.
Why do you suggest language with a difficult learning curve for a beginner?
And why don't you mention the most popular language in the world, Javascript? I don't love it but it's incredibly useful and quite easy.