Recent Posts
printf("ho_tari\n");
과제 - 단순 연결리스트 구현 본문
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define _CRT_SECURE_NO_WARNINGS
typedef struct NODE
{
int no;
char name[20];
int age;
struct NODE* next;
}NODE;
struct NODE* search(NODE* list, NODE* p)
{
int q;
printf("input number to search: ");
scanf_s("%d", &q);
p = list;
while (p != NULL)
{
if (q == p->no)
{
printf("search %d %s %d \n", p->no, p->name, p->age);
break;
}
else
{
p = p->next;
}
}
return p;
}
struct NODE* print(NODE* list, NODE*p)
{
p = list;
while (p != NULL)
{
printf("[%d %s %d] \n", p->no, p->name, p->age);
p = p->next;
}
return p;
}
int main()
{
NODE* list = NULL;
NODE* pr = NULL;
NODE* p = NULL;
NODE* next = NULL;
int num = 0;
char buffer[20];
while (num != 4)
{
printf("====1.add 2.search 3.print 4.exit\n");
scanf_s("%d", &num);
switch (num)
{
case 1:
{
p = (NODE*)malloc(sizeof(NODE));
printf("input number: ");
scanf_s("%d", &p->no);
gets_s(buffer, 20);
printf("input name: ");
gets_s(p->name, 20);
printf("input age: ");
scanf_s("%d", &p->age);
if (list == NULL)
list = p;
else
pr->next = p;
p->next = NULL;
pr = p;
break;
}
case 2:
{
NODE* p2 = search(list, p);
break;
}
case 3:
{
NODE* p3 = print(list, p);
break;
}
case 4:
{
printf("terminate...\n");
break;
}
default:
break;
}
}
}
'대학교 2학년 1학기 > 데이터구조' 카테고리의 다른 글
1주차 과제 (0) | 2023.09.04 |
---|---|
과제 - 원형 연결리스트 구현 (0) | 2023.09.04 |
과제 - 원형 큐 구현 (0) | 2023.09.04 |
과제 - 함수 포인터를 이용한 계산기 구현 (0) | 2023.09.04 |
과제 - 행렬 곱셈 구현 (0) | 2023.09.04 |