CODE ONLINE PLEASE VISIT ANY OF THE FOLLOWING....

SINGLY LINKED LIST USING C




#include<stdio.h>
#include<stdlib.h>
struct node
     {
      int data;
      struct node *next;
     };
void display(struct node *temp)
     {
       printf("\nElements in the list are===");
       while(temp!=NULL)
         {
           printf("\n%d",temp->data);
           temp=temp->next;
          }
     }


 struct node * insert(struct node *start)
    {
      struct node *temp,*prev;
     int pos;
      temp=(struct node*)malloc(sizeof(struct node));
      printf("\n Enter new");
             scanf("%d",&temp->data);
      printf("select the position \n1-At begining\n2--At end\n3---At specific position::");
      scanf("%d",&pos);
  
  switch(pos)
   {
      case 1:
          
             temp->next=start;
             start=temp;
             break;
          
     case 2:
           
             prev=start;
             while(prev->next!=NULL)
             {
               prev=prev->next;
             }
               prev->next=temp;
               temp->next=NULL;
             break;
            
        
    case 3:
         
            printf("Enter the position");
            scanf("%d",&pos);
            if(pos==1)
              {
               temp->next=start;
               start=temp;
              }
            else if(pos>1)
                   {
                     prev=start;
                     pos--;
                     while(pos>1&&prev->next!=NULL)
                           {
                            prev=prev->next;
                            pos--;
                            }
                            temp->next=prev->next;
                            prev->next=temp;
                          }
          else
                        printf("invalid entry");
             
            break;
         
   default:
           printf("Invalid entry");
     
    } return(start);
   }


void main()
    {
      int choice;
      struct node *start,*prev,*temp;
      start=(struct node*)malloc(sizeof(struct node));
      printf("\nEnter the First element:::");
             scanf("%d",&start->data);
      start->next=NULL;
      prev=start;
      printf("\npress 1 to enter more or 0 for exit::::::::");
      scanf("%d",&choice);
      while(choice==1)
         {
           temp=(struct node*)malloc(sizeof(struct node));
           printf("enter the next");
                  scanf("%d",&temp->data);
                  temp->next=NULL;
                  prev->next=temp;
                  prev=temp;
            printf("\npress 1 to enter more or 0 for exit::::");
                  scanf("%d",&choice);
         }
      while(1)
         {
           printf("\nList created[select an operation]\n");
           printf("\n1-Display\n2--Insert\n3---Exit:::");
           scanf("%d",&choice);
           switch(choice)
                {
           case 1:
                  display(start);
                  break;
           case 2:
                  start=insert(start);
                  break;
           case 3:
                  exit(0);
                  break;
           default:
                  printf("invalid input");                  break;
               }
        }
  }
     


 













Comments

Popular posts from this blog

INTRODUCTION TO PYTHON

Fibonacci series by using c

TO FIND ODD NUMBERS UP TO N