Naja, aber das Umformatieren in eine Zahle bleibt ihn ja trotzdem nicht erspart ... fgets() macht bei reinen Strings Sinn ... aber wenn ich will dass der Nutzer eine Zahl eingibt eher nicht ...
man sollte aber scanf() nicht verwenden ohne den Rückgabewert zu überprüfen ... scanf() gibt immer die Anzahl der korrekt gelesenen und formatierten Elemente/Argumente zurück.
Edit: scanf_s() gibts aber nur beim MSVC ... und ist somit für Platformunabhängige Programme eher nutzlos und nicht zu empfehlen ...