Die erste Aufgabe ist wirklich einfach zu lösen. Du brauchst eine Funktion, die übergebene Buchstaben in Großbuchstaben umwandelt:
http://lmgtfy.com/?q=Gro%C3%9Fbuchstaben+C
Zu zwei, das könnte problematisch werden, solange du nicht auf ncurses aufbaust. Aber glaube, dass ihr das nicht sollt. Shells kann man, zumindest unter Linux, beliebig lang ziehen und dann passt dementsprechend mehr in eine Zeile. Unter Windows muss man sich erst einmal durch die cmd-Einstellungen durchsuchen. Ich würde dir empfehlen, die Gesamtzahl zu zählen, und dann den gleichen Abstand zu links und rechts zu bilden. Also wenn bspweise 100 Zeichen in eine Zeile passen, dann in jeder Zeile erst einmal 20 Leerzeichen schreiben und dann erst mit dem Text beginnnen. Und vertikal zentriert zu schreiben, würde ich jetzt mal als unmöglich erachten (abgesehen von ncurses).
Zu deinem 60-Zeichen String: Jeder String in C ist im Prinzip nichts anderes, als ein char array, das heißt dass du auf die einzelnen Buchstaben mittels Arrayindex zugreifen kannst. Das kombinierst du mit einer For-Schleife mit Bedinung <= 60 und schon hast du eine 60-Zeichen lange Ausgabe.
Und zu der Nullterminierung wirst du sicherlich auch etwas bei Google finden.