Wednesday, 16 January 2013

DS practical 2

1. Write a program to check whether a given string is palindrome or not using pointer and array.
#include<stdio.h>
#include<conio.h>
void palindrom(char *str)
{
    int flag=0,i,j,no;
    no=strlen(str);

    for(i=0, j=no-1; i<no/2; i++,j--)
    {
        if(str[i] != str[j])
        {
            flag=1;
            break;
        }
    }
    if(flag==0)
        printf("\n\nString is palindrom");
    else
        printf("\n\nString is not palindrom");
}
void main()
{
    char str[50];
    clrscr();
    printf("Enter the string : ");
    scanf("%s",&str);
    palindrom(str);
    getch();
}
Click here to Download

2. Implement a program for given problem
    Search a string if search sucessfully than replace the search string with a new string
#include<stdio.h>
#include<conio.h>
int stlen(char str[50])
{
    int len = 0;
    while(str[len]!='\0')
        len++;
    len--;
    return len;
}
void strRep(char str1[50], char str2[50])
{
    int i = 0,len = 0;
    while(str1[len]!='\0')
        len++;

    while(str2[i]!='\0')
    {
        str1[len] = str2[i];
        i++;
        len++;
    }
    str1[len] = '\0';
}
void main()
{
    char str1[50], str2[50], str3[50], temp[50];
    int len1, len2, len3, i, j, match, k;
    clrscr();

    printf("\n\n\t Enter a sentance : ");
    gets(str1);
    len1 = stlen(str1);

    printf("\n\n\t Enter the string which you want to find :");
    gets(str2);
    len2 = stlen(str2);

    printf("\n\n\t Enter new string which you want to replace : ");
    gets(str3);
    len3 = stlen(str3);

    for(i=0;i<=len1;i++)
    {
        match = 1;
        for(j=0;j<=len2;j++)
        {
            if(str2[j]!=str1[i+j])
            {
                match = 0;
                break;
            }
        }
        if(match)
        {
            for(k=0,j=i+len2+1;j<=len1;j++,k++)
                temp[k] = str1[j];

            temp[k] = '\0';

            for(j=0;j<=len3;j++)
                str1[i+j] = str3[j];

            str1[i+j] = '\0';

            strRep(str1,temp);
            len1 = len1 - len2 +len3;
            i = i + j;
        }
    }
    printf("\n\n\t OUTPUT IS: ");
    puts(str1);
    getch();
}
Click here to Download
3. Implement following inbuilt function using UDF
    (i)   strupr
    (ii)  strlwr

#include<stdio.h>
#include<conio.h>
void strUpper(char s1[]);
void strLower(char s1[]);
void main()
{
      char str[50];
      clrscr();
      printf("Enter the string : ");
      scanf("%s",&str);
      if(str[0]>=97 && str[0] <= 122)
    strUpper(str);
      else if(str[0]>=65 && str[0] <= 90)
    strLower(str);
      getch();
}
void strUpper(char s1[50])
{
    int i;
    for(i=0;s1[i]!='\0';i++)
    {
        if(s1[i]>=97 && s1[i] <= 122)
        {
            s1[i]=s1[i]-32;
        }
    }
    printf("\n String is : %s",s1);
}
void strLower(char s1[50])
{
    int i;
    for(i=0;s1[i]!='\0';i++)
    {
        if(s1[i]>=65 && s1[i] <= 90)
        {
            s1[i]=s1[i]+32;
        }
    }
    printf("\n String is : %s",s1);
}
Click here to Download

No comments:

Post a Comment