Num... mi dispiace contraddire la tua opinione
ma non sono per niente d'accordo con quello che hai detto.

1) L'HTML come hai accennato non è un linguaggio di "programmazione"

ma di formattazione testi...
quindi non vedo in cosa possa essermi di aiuto sapere:
codice:
<html><head><title>page</title></head>
<body bgcolor=#cccccc text=#ff0000>
<center>
<font color=#ff00cc size=3 face=arial,times>CIAO</font>

</center>
</body>
</html>
per passare poi a:
codice:
#include <stdio.h>
#include <stdlib.h>

char *funzione();


int main(){

    char *p;
    p = (char*) malloc(5 * sizeof(char)); 
    p = funzione();
    printf("%s\n", p);
    return 0;

}


char *funzione(){
    
    char *str;
    str = (char*) malloc(5 * sizeof(char));
    str = "C I A O";
    return str;

}
N.B. ho utilizzato appositamente i puntatori
e l'allocazione dinamica della memoria
per spiegare meglio il punto (2)





2)Io conosco abbastanza bene il Linguaggio di "scripting" PERL

e devo dire che per la manipolazione delle stringhe è fantastico,
pratico e semplice da apprendere e da usare...

ma (come è successo a me) se studi prima PERL e poi passi al C

potresti trovare più complicato capire l'utilizzo dei puntatori,
la gestione delle stringhe e dei caratteri, ecc... ecc... ecc...

in quanto tutte queste cose in PERL sono molto semplificate...

[filosofico mode]
insomma è un pò come

imparare a giocare a tennis da solo (e diventare anche bravino)
e poi (dopo qualche anno che si gioca)
decidere di prendere un istruttore per migliorare...

ci metti molto più tempo a correggere i difetti d'impostazione ecc...

QUINDI... meglio iniziare subito prendendo lezioni
[/filosofico mode]

Ovv. questo è solo il mio punto di vista