void addsorted(OBJECT data,list target) { while (target->next) { if (target->content>=data) break; target = target->next; } if (target->content>data) addbefore(data,target) else add(data,target); }
main() { int choice,data,item; struct node *start=NULL; while(1) { printf("1.Create List\n"); printf("2.Display\n"); printf("3.Add to empty list\n"); printf("4.Add at beginning\n"); printf("5.Add at end\n"); printf("6.Add after\n"); printf("7.Add before\n"); printf("8.Delete\n"); printf("9.Reverse\n"); printf("10.Quit\n"); printf("Enter your choice : "); scanf("%d",&choice); switch(choice) { case 1: start=create_list(start); break; case 2: display(start); break; case 3: printf("Enter the element to be inserted : "); scanf("%d",&data); start=addtoempty(start,data); break; case 4: printf("Enter the element to be inserted : "); scanf("%d",&data); start=addatbeg(start,data); break; case 5: printf("Enter the element to be inserted : "); scanf("%d",&data); start=addatend(start,data); break; case 6: printf("Enter the element to be inserted : "); scanf("%d",&data); printf("Enter the element after which to insert : "); scanf("%d",&item); start=addafter(start,data,item); break; case 7: printf("Enter the element to be inserted : "); scanf("%d",&data); printf("Enter the element before which to insert : "); scanf("%d",&item); start=addbefore(start,data,item); break; case 8: printf("Enter the element to be deleted : "); scanf("%d",&data); start=del(start,data); break; case 9: start=reverse(start); break; case 10: exit(1); default: printf("Wrong choice\n"); }/*End of switch*/ }/*End of while*/ }/*End of main()*/