Example #1
0
pnodo delet(int x, pnodo T)
{
  pnodo temp;
  if (T == NULL) printf("Elemento no encontrado\n");
  else 
    if (x < T->valor) /* por la izquierda */
      T->left = delet(x,T->left);
    else 
       if (x > T->valor) /* por la derecha */
          T->right = delet(x,T->right);
    else /* se encontro el elemento a descartar */
      if (T->left && T->right) /* dos hijos */
      { 
         /* reemplázelo con el menor del subárbol derecho */
         temp = busca_min(T->right);
         T->valor = temp->valor;
         T->right = delet(temp->valor,T->right);  /*borrar la hoja  */
      }
      else 
         { /* un hijo o ninguno */
           temp = T;
           if (T->left == NULL)  /* sólo hijo derecho o sin hijos */
              T = T->right;
           else
             if (T->right == NULL) /* solamente un hijo izquierdo */
               T = T->left;
           free(temp);  /*libera espacio  */
         }
  return(T);
}
Example #2
0
int main(void)
{
    int ch;
    void insert();
    int delet(void);
    int display(void);
    printf("\nCircular Queue operations\n");
    printf("1.insert\n2.delete\n3.display\n4.exit\n");
    while(1)
    {
        printf("Enter your choice:");
        scanf("%d",&ch);
        switch(ch)
        {
        case 1:
            insert();
            break;
        case 2:
            delet();
            break;
        case 3:
            display();
            break;
        case 4:
            return 1;
        default:
            printf("Invalid option\n");
        }
    }
    return 0;
}
Example #3
0
void main() {
	int choice = 5;
	int counter1 = 0;


	printf("\n\t\t\tWelcome to Employee Management Program\n\n");
	printf("\n\t1] Create new employee");
	printf("\n\t2] Display all employees");
	printf("\n\t3] Edit employee details");
	printf("\n\t4] Delete employee record");
	printf("\n\t5] Exit");


	while(1) {
		printf("\n\nEnter your choice");
		scanf("%d", &choice);
		
		switch(choice) {
			case 1:
				create();
			break;
			case 2:
				display();
			break;
			case 3:
				update();
			break;
			case 4:
				delet();
			break;
			case 5:
				exit(0);
		}
	}
}
Example #4
0
void main()
{
	
	int choice,v;
	do
	{
	 printf("Enter choice \n1.Create \n2.Insert \n3.Delete \n4.Display \n5.Exit");
	 scanf("%d",&choice);
	 switch(choice)
	 {
		case 1:
			create();
			break;

		case 2:
			insert();
			break;

		case 3:
			delet();
			break;

		case 4:
			display();
			break;
		
		case 5:
			exit(0);
	 }
	}while(1);
}
Example #5
0
int main(void)
{
	char s1[] = "hello hand";
	char s2[] = "ha";

	delet(s1, s2);

	return 0; 
}
Example #6
0
struct tree * delet(struct tree *temp)
{
	static int ch;
	if(temp!=NULL&&ch==0)
	{
		printf("\nwant to delete(1/0) %d: ",temp->data);
		fflush(stdin);
		scanf("%d",&ch);
		if(ch==0)
		{
			delet(temp->left);
			delet(temp->right);
		}
		else
		{
		  dlt=temp;
		}
	}
}
Example #7
0
int oparse(char *st)
{
	char *fields[20];
	int arr[20],delindex;
	char arr1[20];
	int i=0,j=0;

	for(i=0;i<20;++i)
		fields[i]=malloc(100);


	split(st,fields,' ');
	i=0;
	j=0;
	while(fields[j])
	{

		while(fields[j])
			arr[i++]=getindex(fields[j++],j);
		arr[i]=-1;

		i=0;
		j=0;
		while(arr[i+1]!=-1)
		{
		   arr1[j++]=mat[arr[i]][arr[i+1]];
		   i=i+1;
		}
		arr1[j]=0;
		for(i=0;i<j;++i)
		{

			if(arr1[i]=='<'&&arr1[i+1]=='>')
			{
				fields[i+1]="N";
				delindex=i+1;
				break;
			}
		}

		i=0;
		while(fields[i])
		{
			printf("%s ",fields[i]);
			i++;
		}
		printf("\n");
		delet(fields,delindex);
		j=0;
		i=0;
	}


	return 1;
}
void del(int x,int y,int e)
{
    d[q++]=e;

    b[w++]=x;
    n[r++]=y;

 z=q-1;

delet();
}
Example #9
0
void main()
{
	struct tree *root=NULL,*temp,*dltree;
	int i,j,k,ch,n;
	int gd=0,gm;
	clrscr();
	printf("\n1 insert");
	printf("\n2 disp");
	printf("\n3 delete");
	while(1)
	{
		printf("\n enter choice:");
		scanf("%d",&ch);
		switch(ch)
		{
			case 1:
				printf("\nEnter the data:");
				scanf("%d",&n);
				if(root==NULL)
				{
					root=malloc(size);
					root->data=n;
					root->left=root->right=NULL;
				}
				else
					insert(root,n);
				break;
			case 2:
				initgraph(&gd,&gm,"e:\\tc\\bgi");
				display(root,1,640,15,1);
				getch();
				closegraph();
				break;
			case 3:
				delet(root);
				if(dlt->left==NULL&&dlt->right==NULL)
					simple(root,dlt);
				if(dltree->left!=NULL&&dltree->right!=NULL)
 //					complex(&dltree);
//				else
   //					inter(&dltree);
				break;
			case 4:
				break;
			case 0:
				exit(0);
		}
	}
}
Example #10
0
void main()
{
    int n,ins,nv,deln;
    start=NULL;
    clrscr();
    do
    {
        printf("\n\nMENU");
        printf("\n******");
        printf("\n\n1.add");
        printf("\n\n2.display list");
        printf("\n\n3.insertion");
        printf("\n\n4.deletion");
        printf("\n\n5.exit");
        printf("\n\nenter ur choice");
        scanf("%d",&n);
        if(n==1)
        {
            printf("\n\n addition of a new node");
            add();
        }
        if(n==2)
        {
            disp();
        }
        if(n==3)
        {
            printf("\n\n insertion in the middle");
            printf("\n-------------------------");
            printf("\n\n enter after which node:");
            scanf("%d",&ins);
            printf("\n\n enter the new node value:");
            scanf("%d",&nv);
            insert(ins,nv);
            disp();
        }
        if(n==4)
        {
            printf("\n\n deletion of a node");
            printf("\n--------------------");
            printf("\n\n enter the node to be deleted");
            scanf("%d",&deln);
            delet(deln);
            disp();
        }
    } while(n>0 && n<5);
}
Example #11
0
int main() {
    MyStringClass one("String #1");
    MyStringClass two("Mah string #2 #blessed");
    MyStringClass three("#tres!");
    MyStringClass four("too good 4 me"); 

    Sub* sub = new Sub(std::move(one), std::move(two), std::move(three), std::move(four));
    Mid* mid = sub;
    //Base* base = sub;
    //std::cout << "Field 1 is: " << base->field.get() << std::endl;
    //base->field = MyStringClass("Eyo, boy");
    //delete base;

    delet(mid);

    return 0;
}
Example #12
0
int main( )
{
    system("CLS");
	struct node *head;
	char str2[20],ch;
	int n;
	head=NULL; 
	head=creat(head); 
out1: ;
	printf("\nplease input the number of function: 1.insert 2.delete 3.search 4.print 5.quit \n");
	while(1){
        scanf("%c",&ch);
        if(ch=='1') {
            system("CLS");
            printf("\n input inserted num,name:\n");
            scanf("%d",&n); /*输入学号*/
            scanf("%s",str2); /*输入姓名*/
            head=insert (head, str2, n);
			goto out1; 
        }
        if(ch=='2'){
            system("CLS");
            printf("\n input deleted name:\n");
            scanf("%s",str2);  /*输入被删姓名*/
            head=delet(head,str2); 
            goto out1;
        }
        if(ch=='3'){
            system("CLS");
            printf("\n input name:\n");
            scanf("%s",str2);  /*输入寻找姓名*/
            search(head,str2); 
            goto out1;
        }
        if(ch=='4'){
            system("CLS");
            print(head);
            goto out1;
        }
        if(ch=='5') break;
	}
	return 0;
}
Example #13
0
void main(void)
{
  printf(" hojas = %d \n", NumerodeHojas(root));
  printf(" Profundidad = %d \n", Profundidad(root));
  printf(" Profundidad2 = %d \n", Height(root));
  root=insert(5,root);
  root=insert(6,root);
  root=insert(4,root);
  prtinorder(root);
  inorder(root, 0);
  prtpreorder(root);
  prtpostorder(root);
  delet(4, root);
  prtinorder(root);
  printf(" hojas = %d \n", NumerodeHojas(root));
  printf(" Profundidad = %d \n", Profundidad(root));
  printf(" Profundidad2 = %d \n", Height(root));
  system("pause");
}
Example #14
0
void main(){
	char name[20];
	int id;
	int n;
	for (n=0;n<=3;n++){
		printf("id:");
		scanf("%d",&id);
		printf("name:");
		scanf("%s",&name);
		if (onoff==0){
			create(id,name);
		}else{
			insert(id,name);
		}
		printf("\n");
	}
	delet(4);
	printf("---------------------------------------------------------------------\n");
	print_all();
}
Example #15
0
void main()
{
   int q[size],n,value;
   int exit=0;
   int front=-1;
   int rear=-1;
   clrscr();
   printf("\n 1:insert \n 2:delete \n 3:display \n 4:exit \n");
   while(exit!=1)
   {
       printf("\nenter n: ");
       scanf("%d",&n);
	 switch(n)
	 {
	     case 1:
	     {
	     printf("\nvalue:");
	     scanf("%d",&value);
	     insert(q,value,front,rear);
	     break;
	     }
	     case 2:
	     {
	     delet(front,rear);
	     break;
	     }
	     case 3:
	     {
	     display(q,front,rear);
	     break;
	     }
	     case 4:
	     {
	       exit=1;
	       break;
	     }
	 }
   }
   getch();
}
Example #16
0
	void main()
	{
	void insert();
	void delet();
	void display();
	int ch;
	clrscr();
	printf("\n\tOUTPUT\n");
	printf("\n\tQUEUE IMPLEMENTATION USING LINKED LIST\n");
	printf("\n\t1: INSERT\n\t2: DELETE\n\t3: DISPLAY\n\t4: EXIT");
	while(1)
	{
	printf("\n\nEnter your choice: ");
	scanf("%d",&ch);
	switch(ch)
	{
	case 1:   insert();     break;
	case 2:   delet();      break;
	case 3:   display();   break;
	case 4:   exit(1);      break;
	default:printf("\nInvalid option");
	}
	}
	}
Example #17
0
/*主函数*/
int StudentManagerSystemMain() {
    setbuf(stdout, NULL); /*取消,默认输出流存在buffer机制*/
    /*函数声明*/
    char menu(); /*菜单*/
    struct student *create(); /*创建链表*/
    struct student *insert(); /*插入节点*/
    struct student *delet(); /*删除节点*/
    void printStudent(); /*输出链表*/
    STUDENT *find();

    /*数据定义*/
    struct student *head; /**/
    char name[20];
    int n;
    head = NULL; /*作空链表*/

    char type=0;
    while ((type=menu())!='q') {
        switch (type) {
        case '0':
            return EXIT_SUCCESS;
        case '1':
            head = create(head); /*调用函数创建以head为头的链表*/
            break;
        case '2':
            printf("\nInput the inserted num and name:\n");
            gets(name); /*输入学号*/
            n = atoi(name); /**/
            gets(name); /*输入姓名*/
            head = insert(head, name, n); /*将结点插入链表*/
            break;
        case '3':
            printf("\nInput the deleted name:\n");
            gets(name); /*输入被删除姓名*/
            head = delet(head, name); /*调用函数删除结点*/
            break;
        case '4':
            printStudent(head); /*调用函数输出节点*/
            printf("press any key back...");
            scanf("%c", &type);
            scanf("%c", &type);
            break;
        case '5':
            printf("\nInput the find name:\n");
            gets(name);
            STUDENT *stu=find(head,name);
            break;
        }
    }
//	head=create(head);		/*调用函数创建以head为头的链表*/
//	print(head);			/*调用函数输出节点*/
//
//	printf("\nInput the inserted num and name:\n");
//	gets(name);				/*输入学号*/
//	n=atoi(name);			/**/
//	gets(name);				/*输入姓名*/
//	head=insert(head,name,n);	/*将结点插入链表*/
//	print(head);
//
//	printf("\nInput the deleted name:\n");
//	gets(name);				/*输入被删除姓名*/
//	head=delet(head,name);	/*调用函数删除结点*/
//	print(head);
    return EXIT_SUCCESS;
}
Example #18
0
void main()
{
    int k;
    char s[20],c[20]={'1'};
    char p[20];
    Link head = NULL;
    printf("Welcome to CY's NOTEBOOK!\n");
    printf("Please enter you password:\n");
    gets(p);
    printf("\n Please wait...\n");
    Sleep(1000);
    system("cls");
    if(!strcmp("Chen Yi",p))
    {
        printf("\n\n Welcome!\n");
        printf(" []             *   *    *                 @              *                 *   ");
        printf("\n");
        printf(" []          *             *               @                *              *    ");
        printf("\n");
        printf(" []         *               *              @                  *          *      ");
        printf("\n");
        printf(" []         *                              @                    *      *       ");
        printf("\n");
        printf(" []         *                              @                        *          ");
        printf("\n");
        printf(" []          *                             @                        *           ");
        printf("\n");
        printf(" []            *           *               @                        *           ");
        printf("\n");
        printf(" []               *  *  *                  @                        *           ");
        ReadData(&head);
        do
        {
            printf("分类查询请按1,添加记录请按2,删除记录请按3,显示全部请按4,保存记录请按5,个人信息查询请按6,退出系统请按0\n");
            scanf("%d",&k);
            while(k!=1&&k!=2&&k!=3&&k!=4&&k!=5&&k!=6&&k!=0)
            {
                printf("输入错误!请输入数字1至6!\n");
                scanf("%d",&k);
            }
            switch(k)
            {
                case 1:
                    do
                    {
                        groupsearch(head);//查寻群组信息
                        printf("继续查询请按1,按其他键退出查询!\n");
                        scanf("%s",s);
                    }while(!strcmp(s,c));
                    break;
                case 2:
                    do
                    {
                        sort(head);
                        head=enter(head);//添加个人信息
                        printf("继续添加请按1,按其他键退出添加!\n");
                        scanf("%s",s);
                    }while(!strcmp(s,c));
                    break;
                case 3:
                    do
                    {
                        sort(head);
                        head=delet(head);//删除个人信息
                        printf("继续删除请按1,按其他键退出删除!\n");
                        scanf("%s",s);
                    }while(!strcmp(s,c));
                    break;
                case 4:sort(head);display(head);break;
                case 5:sort(head);save(head);printf("保存成功");break;//保存个人信息
                case 6:sort(head);search(head);break;//查询个人信息
                case 0:Free(&head);return;
            }
        }while(1);
    }
    else printf("密码错误,系统将自动退出!");
    Beep(1060,500);//i
    Beep(784,500);//5
    Beep(523,500);//1
}
Example #19
0
int main()
{
    char s[80];
    student a[50], key, res;
    unsigned ch, n, pos;
    n=0;
    do{
        puts("What would you like to do?");
        puts(" ( 0) Exit");
        puts(" ( 1) Enter details");
        puts(" ( 2) Show details");
        puts(" ( 3) Insert an element");
        puts(" ( 4) Delete an element");
        puts(" ( 5) Sort by Name");
        puts(" ( 6) Sort by City");
        puts(" ( 7) Sort by Roll");
        puts(" ( 8) Sort by Mark");
        puts(" ( 9) Search by Name");
        puts(" (10) Search by City");
        puts(" (11) Search by Roll");
        puts(" (12) Search by Mark");
        scanf(" %u%*c", &ch);
        switch(ch){
        case 0:
            puts("Bye!");
            break;
        case 1:
            n=accept(a, n);
            break;
        case 2:
            display(a, n);
            break;
        case 3:
            puts("Enter the following details:");
            printf(" - Name : ");
            gets(s);
            strcpy(key.name, s);

            printf(" - City : ");
            gets(s);
            strcpy(key.city, s);

            printf(" - Roll : ");
            scanf(" %u%*c", &key.roll);

            printf(" - Mark : ");
            scanf(" %u%*c", &key.mark);

            puts("Position?");
            scanf(" %u%*c", &pos);
            putchar('\n');

            insert(a, &n, pos, key);
            display(a, n);
            break;
        case 4:
            puts("Position?");
            scanf(" %u%*c", &pos);
            delet(a, &n, pos);
            display(a, n);
            break;
        case 5:
            sort_name(a, n);
            display(a, n);
            break;
        case 6:
            sort_city(a, n);
            display(a, n);
            break;
        case 7:
            sort_roll(a, n);
            display(a, n);
            break;
        case 8:
            sort_mark(a, n);
            display(a, n);
            break;
        case 9:
            puts("Name?");
            gets(s);
            res=srch_name(a, n, s);
            if(is_equal(res, error)) display_one(res);
            else puts("Not Found.");
            break;
        case 10:
            puts("City?");
            gets(s);
            res=srch_city(a, n, s);
            if(is_equal(res, error)) display_one(res);
            else puts("Not Found.");
            break;
        case 11:
            puts("Roll?");
            scanf(" %u%*c", &pos);
            res=srch_roll(a, n, pos);
            if(is_equal(res, error)) display_one(res);
            else puts("Not Found.");
            break;
        case 12:
            puts("Mark?");
            scanf(" %u%*c", &pos);
            res=srch_mark(a, n, pos);
            if(is_equal(res, error)) display_one(res);
            else puts("Not Found.");
            break;
        default:
            puts("Incorrect Choice!");
            break;
        }
        putchar('\n');
    } while(ch);
    return 0;
}