How to decode Leet Speak (where numbers resemble letters (7->T, 1->I, 5->S, 3 -> E)) in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

// 7H15 M3554G3 is written in leet speak, where numbers resemble letters.
// place each leetspeak character with its matching letter
// (7 -> T, 1 -> I, 5 -> S, 3 -> E) and build a new string
// 7H15 -> THIS | M3554G3 -> MESSAGE

// Your brain can interpret distorted or number‑substituted letters
// surprisingly well because it recognizes the overall word
// shapes and patterns, not just individual characters.

// ------------------------------------------------------------
// Convert a single leet character into a normal alphabet letter
// ------------------------------------------------------------
char decodeChar(char c) {
    switch (c) {
        case '7': return 'T';
        case '1': return 'I';
        case '5': return 'S';
        case '3': return 'E';
        case '4': return 'A';
        case '0': return 'O';
        default:  return c;   // keep letters like H, M, G, etc.
    }
}

// ------------------------------------------------------------
// Convert an entire string from leet speak to normal text
// ------------------------------------------------------------
void decodeLeet(const char *in, char *out) {
    while (*in) {
        *out = decodeChar(*in);
        in++;
        out++;
    }
    *out = '\0';
}

int main() {

    // Test lines provided by the user
    const char *lines[] = {
        "7H15 M3554G3",
        "53RV35 7O PR0V3",
        "H0W 0UR M1ND5 C4N",
        "D0 4M4Z1NG 7H1NG5!",
        "1MPR3551V3 7H1NG5!",
        "1N 7H3 B3G1NN1NG",
        "17 WA5 H4RD BU7",
        "N0W, Y0UR M1ND 1S",
        "R34D1NG 17",
        "4U70M471C4LLY."
    };

    char decoded[256] = "";

    int count = sizeof(lines) / sizeof(lines[0]);

    for (int i = 0; i < count; i++) {
        decodeLeet(lines[i], decoded);
        printf("%s\n", decoded);
    }

    return 0;
}


/*
run:

THIS MESSAGE
SERVES TO PROVE
HOW OUR MINDS CAN
DO AMAZING THINGS!
IMPRESSIVE THINGS!
IN THE BEGINNING
IT WAS HARD BUT
NOW, YOUR MIND IS
READING IT
AUTOMATICALLY.

*/

 



answered 3 hours ago by avibootz
...