Please need help on following program using c language Pleas
Please need help on following program using c++ language. Please include all header files and main file with their own title.
Extend the class linkedListType by adding the following operations:
Write a function that returns the info of the kth element of the linked list. If no such element exists, terminate the program.
Write a function that deletes the kth element of the linked list. If no such element exists, terminate the program.
Provide the definitions of these functions in the class linkedListType. Also, write a program to test these functions. (Use either the class unorderedLinkedList or the class orderedLinkedList to test your function.)
Solution
C++ Code for the given problem is below.....
.....................................................
/*
 * C++ Program to Implement Singly Linked List
 */
 #include<iostream.h>
 #include<conio.h>
 #include<stdlib.h>
 //using namespace std;
 /*
 * Node Declaration
 */
 typedef struct nodetype
    {
        int info;
        nodetype *next ;
    } node;
 
 /*
 * Class Declaration
 */
 class linkedListType
 {
 public:
 void insfrombeg( node **head, int);
    void delfromkth(node **head,int);
    void findthekthnode(node *head,int);
    void traverse(node *head);   
    int item,ch,kth;
    node *ptr,*head,*temp;
};
/*
 * Main :contains menu
 */
 void main()
 {
 int item,ch,kth;
 node *ptr,*head,*temp;
 linkedListType s1;
 clrscr();
 while (1)
 {
        while(1)
        {
        cout<<\"PRESS (1) FOR INSERT INTO LIST\"<<endl;
        cout<<\"PRESS (2) FOR TRAVERSE FROM INORDER\"<<endl;
        cout<<\"PRESS (3) FOR DELETE FROM kth NODE\"<<endl;
        cout<<\"PRESS (4) FOR FIND THE Kth NODE\"<<endl;
        cout<<\"PRESS (5) FOR EXIT FROM MENU\"<<endl;
        cout<<\"ENTER YOUR CHOICE\"<<endl;
        cin>>ch;
            switch(ch)
            {
                case 1:
                cout<<\"ENTER THE VALUE \"<<endl;
                cin>>item;
                s1.insfrombeg(&head,item);
                break;
                case 2:
                s1.traverse(head);
                break;
                case 3:
                cout<<\"ENTER THE Kth Element which you want\'s to delete\"<<endl;
                cin>>kth;
                s1.delfromkth(&head,kth);
                break;
                case 4:
                cout<<\"ENTER THE Kth Element which you want\'s to search \ \"<<endl;
                cin>>kth;
                s1.findthekthnode(head,kth);
                break;
                case 5:
                exit(1);
            }
        }
   //   getch();
    }
 }
 /*
 * Inserting element in beginning
 */
 void linkedListType::insfrombeg(node **head,int item)
                {
                    temp= ( node * ) malloc (sizeof( node ));
                    temp->info= item;
                    temp->next= NULL;
                    if(*head == NULL)
                    {
                    temp->next= *head;
                    *head= temp;
                    }
                    else
                    {
                    temp->next= *head;
                    *head= temp;
                    }
                }
 /*
 * Delete element at a given position
 */
 void linkedListType::delfromkth(node **head,int kth)
                { node* temp1=*head,*temp2;
                    if(*head ==NULL)
                    {
                        cout<<\"LINK LIST IS EMPTY\ \"<<endl;
                        exit;
                    }
                    if(kth==1)
                    {
                *head= temp1->next;
                    free(temp);
                    }
                    else
                    for(int j=0;j<kth-2;j++)
                    temp1=temp1->next;
                    temp2= temp1->next;
                    temp1->next=temp2->next;
                    free(temp2);
                }
 
 
 /*
 * Searching an element
 */
 void linkedListType::findthekthnode(node *head,int kth)
                {   
                        ptr=head;
                        int i=1;
                        while((ptr!=NULL))
                        {
                        if(i==kth)
                        {
                        cout<<\"\  The Element at\"<< kth<< \"position with value is \\t \"<<ptr->info<<endl;
                        cout<<endl;
                        break;
                        }
                        else
                        {
                        cout<<ptr->info<<endl;
                        ptr=ptr->next;
                        i++;
                        }
                        }
               }
 
 /*
 * Traverse Link List
 */
 void linkedListType::traverse(node *head)
                {
                    ptr = head;
                    while((ptr->next)->next!=NULL)
                    {
                        cout<<ptr->info<<\"\\t\";
                        ptr=ptr->next;
                    }
                cout<<endl;
                }
...........................................................................................................
please write me if you have any problem regardin this.....
..........................................................................................................
C Code for the given problem ..
#include<stdio.h>
 #include<conio.h>
 #include<stdlib.h>
    typedef struct nodetype
    {
        int info;
nodetype *next ;
   } node;
    int item,ch,kth,total=1;
    node *ptr,*head,*temp;
   void insfrombeg( node **head, int);
    void delfromkth(node **head,int);
    void findthekthnode(node *head,int);
    void traverse(node *head);
 void main()
    {
    clrscr();
        while(1)
        {
        printf(\"PRESS (1) FOR INSERT INTO LIST\ \");
        printf(\"PRESS (2) FOR TRAVERSE FROM INORDER\ \");
        printf(\"PRESS (3) FOR DELETE FROM kth NODE\ \" );
        printf(\"PRESS (4) FOR FIND THE Kth NODE \ \" );
        printf(\"PRESS (5) FOR EXIT FROM MENU \ \");
        printf(\"ENTER YOUR CHOICE\ \");
        scanf(\"%d\",&ch);
            switch(ch)
            {
                case 1:
                printf(\"ENTER THE VALUE\ \") ;
                scanf(\"%d\",&item);
                insfrombeg(&head,item);
                break;
                case 2:
                traverse(head);
                break;
                case 3:
                printf(\"ENTER THE Kth Element which you want\'s to delete \ \") ;
                scanf(\"%d\",&kth);
                delfromkth(&head,kth);
                break;
                case 4:
                printf(\"ENTER THE Kth Element which you want\'s to search \ \");
                scanf(\"%d\",&kth);
                findthekthnode(head,kth);
                break;
                case 5:
                exit(1);
            }
        }
   //   getch();
    }
                void insfrombeg(node **head,int item)
                {
                    temp= ( node * ) malloc (sizeof( node ));
                    temp->info= item;
                    temp->next= NULL;
                    if(*head == NULL)
                    {
                    temp->next= *head;
                    *head= temp;
                    }
                    else
                    {
                    temp->next= *head;
                    *head= temp;
                    }
                }
                void findthekthnode(node *head,int kth)
                { ptr=head;
                        int i=1;
                        while((ptr!=NULL))
                        {
                        if(i==kth)
                        {
                        printf(\"\  The Element at %d position with value is %d\\t\",kth,ptr->info);
                        printf(\"\ \");
                        break;
                        }
                        else
                        {
                        printf(\"%d\\t\",ptr->info);
                        ptr=ptr->next;
                        i++;
                        }
                        }
               }
                void delfromkth(node **head,int kth)
                { node* temp1=*head,*temp2;
                    if(*head ==NULL)
                    {
                        printf(\"LINK LIST IS EMPTY\ \");
                        exit;
                    }
                    if(kth==1)
                    {
                *head= temp1->next;
                    free(temp);
                    }
                    else
                    for(int j=0;j<kth-2;j++)
                    temp1=temp1->next;
                    temp2= temp1->next;
                    temp1->next=temp2->next;
                    free(temp2);
                }
                void traverse(node *head)
                {
                    ptr = head;
                    while(ptr!=NULL)
                    {
                        printf(\"%d\\t\",ptr->info);
                        ptr=ptr->next;
                    }
                    printf(\"\ \");
                }





