Skip to content

luc074.c

Problem Statement

Write a program that will read a line and delete from it all occurrences of the word 'the'.

Metadata

Property Detail
Author Amit Dutta amitdutta4255@gmail.com
Date 08 Feb 2026
License MIT License (See the LICENSE file for details)

Actions

Raw View on GitHub

💡 You can print or save this file by opening Raw and using your browser.

Source Code

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>

int main()
{
    char str[100], res[100];
    int i = 0, j = 0;

    printf("Enter a line of text: ");
    gets(str);

    while (str[i] != '\0')
    {
        /* Check if the current segment matches "the" */
        /* To be a word 'the', it should effectively be surrounded by non-alphabets or start/end of string.
           For simplicity in this context, we check if str[i..] starts with "the" */

        if ((str[i] == 't' || str[i] == 'T') && 
            (str[i+1] == 'h' || str[i+1] == 'H') && 
            (str[i+2] == 'e' || str[i+2] == 'E') &&
            (str[i+3] == ' ' || str[i+3] == '\0'))
        {
            // Found "the" followed by space or null. Skip "the".
            i += 3; 

            // If it was followed by a space, we might want to skip the space too 
            // to avoid double spaces, but the problem says delete 'the'.
            // Let's just skip the word.
        }
        else
        {
            res[j] = str[i];
            j++;
            i++;
        }
    }
    res[j] = '\0';

    printf("Text after removing 'the': %s\n", res);

    return 0;
}