ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [C] Linked List Example
    0x05 Programming/C / C++ 2009. 7. 2. 20:09

     

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    struct S_MEMBER
    {
    	char name[20];
    	int age;
    	char tel[20];
    
    	struct S_MEMBER* pNext;
    };
    struct S_MEMBER* g_pMember=NULL;
    
    
    void Show()
    {
    	struct S_MEMBER* pMember;
    	
    	pMember=g_pMember;
    
    	while(1)
    	{
    		if(NULL == pMember)
    		{
    			break;
    		}
    		else
    		{
    			printf("%s\t %d\t %s\n",pMember->name,pMember->age,pMember->tel);
    			
    			pMember=pMember->pNext;
    		}
    	}
    
    }
    
    void Add()
    {
    	struct S_MEMBER* pMember;
    
    	pMember=(struct S_MEMBER*)malloc(sizeof(struct S_MEMBER));
    
    	printf("Input Name : ");
    	scanf("%s",pMember->name);
    
    	printf("Input Age : ");
    	scanf("%d",&pMember->age);
    
    	printf("Input Tel : ");
    	scanf("%s",pMember->tel);
    
    	pMember->pNext=NULL;
    
    	if(NULL == g_pMember)
    	{
    		g_pMember=pMember;
    	}
    	else
    	{
    		struct S_MEMBER* pT;
    		pT=g_pMember;
    
    		while(1)
    		{
    			if(NULL == pT->pNext)
    			{
    				pT->pNext=pMember;
    				break;
    			}
    			else
    			{
    				pT=pT->pNext;
    			}
    		}
    
    	}
    }
    
    void Shell()
    {
    	char cmd[20];
    
    	printf("Copyright@j0ker\n");
    
    	while(1)
    	{
    		printf("[r00t@localhost]:~# ");
    		scanf("%s",cmd);
    
    		if(0 == strcmp(cmd,"exit"))
    		{
    			break;
    		}
    		else if(0 == strcmp(cmd,"add"))
    		{
    			Add();
    		}
    		else if(0 == strcmp(cmd,"show"))
    		{
    			Show();
    		}
    		else
    		{
    			printf("Unknown Command\n");
    		}
    	}
    
    }
    
    
    int main()
    {
    	Shell();
    
    	return 0;
    }
    
Designed by Tistory.