C programming - how can i make learning c programming more interesting?

I'm a programmer and i already know swift, python and javascript. And when i was learning each of those i started working on real world projects to keep it interesting, with swift i made a couple of iphone games and apps that i wanted for myself that were actually useful. With javascript, i used it along with html and css to make a web app for me to efficiently store school notes. With python, i made a web app and now i'm making games with python and pygame. I learn programming languages by making real world projects. But i don't know how to do that with c, i've been learning from "the c programming kanguage: second edition" book by dennis and brian. But its really boring learning like this, i love programming and usually i'm excited about working on projects but because of the boring approach to learning c i find myself procrastinating and taking hours before i start working and when i do i get bored and distracted easily, so far, i only know how to make programs that run in the terminal (linux) or cmd (windows), i don't know how to make anything practical or useful, so if you could give me tips about how to learn c in a more interesting way and link me to tutorials or something that teaches how to make practical and useful stuff in C that would be great. Thank you

Added (1). If anybody else answers the question, could you elaborate or link me to a page or something that explains what you mean and how i would go on about starting with if your answer isn't detailed

Two approaches:

1) Get into the bones - look at memory management, understand how things actually work. Get into timings/performance. Look at complex algorithms.

2) If you want some displayable output, install an X server, eg Xming and do some X Windows programming.

C isn't meant to be fun, C is meant to be 'easier than assembly.' It's probably the fastest of all the common languages.

C is for masochistic programmer who want to be forced to think in harder ways to solve simple problems. The payoff is that you know exactly what your program is doing, most of the abstraction is removed. And being so close to the bottom level means it'll be much faster.

C is a beautiful(if sadistic) mistress and you can't go into it expecting it to be a 'fun' language.