Wednesday 18 December 2013

C Program to find Longer Repeating Sequence

#include < stdio.h>
#include < string.h>
 
void main()
{
    char s1[100], ar[10][20], ar1[10][20], new[10];
    int i, j = 0, k = 0, l, count = 0, flag = 0, n, temp, len[20];
 
    printf("\nenter the string:" );
    scanf(" %[^\n]s" , s1);
 
    /*COPYING GIVEN STRING TO 2D ARRAY*/
    for (i = 0;s1[i] != '\0';i++,j++)
    {
        if (s1[i] >= 33 && s1[i] <= 64)
            i++;
        if (s1[i] == ' ')
        {
            ar[k][j] = '\0';
            k++;
            i++;
            j = 0;
        }
        ar[k][j] = s1[i];
    }
    ar[k][j] = '\0';
    /*PLACING THE REPEATED WORDS AND LENGTHS INTO NEW ARRAY*/
    l = 0;
    for (i = 0;i <= k;i++)
    {
        for (j = i + 1;j <= k;j++)
        {
            if (strcmp(ar[i], ar[j]) == 0)
            {
                for (n = 0;n < l && l != 0; n++)
                {
                    if (strcmp(ar[i], ar1[k]) == 0)
                    {
                        flag = 1;
                        break;
                    }
                }
                if (flag != 1)
                {
                    strcpy(ar1[l], ar[i]);
                    len[l] = strlen(ar1[l]);
                    l++;
                }
                flag = 0;
                break;
            }
        }
    }
    printf("\n" );
    /*SORTING IS DONE BASED ON THEIR LENGTHS*/
    for (i = 0;i < l;i++)
    {
        for (j = i + 1;j < l;j++)
        {
            if (len[i] < len[j])
            {
                temp = len[i];
                strcpy(new, ar1[i]);
                len[i] = len[j];
                strcpy(ar1[i], ar1[j]);
                len[j] = temp;
                strcpy(ar1[j], new);
            }
        }
    }
    maxlen = len[0];
    for (i = 0;i < l;i++)
    {
        if (len[i] == maxlen)
            printf("\nthe longer repeating sequence of the given string is: %s" , ar1[i]);
    }
}

Output

 enter the string:Welcome to C Programming Class, Welcome Again to C Programming Class ! 
 
the longer repeating sequence of the given string is: Programming

For More Details Please Visit Ictjobs.info

No comments: