배열을 사용한 리스트 자료구조 구현
찬내
일단 이런거 물어봐서 정말 죄송하구요 학교 과제인데 진짜로 진심 제 머리로는 구현이 안되서요.
제가 공부를 안한것도 있지만 교수님이 학생 수준을 너무 높게 잡고 하는지라 따라갈수가없네요.
일단 문제는 제목과 같구요. 추가 조건들이
- list의 각 원소는 이름(name), 전화번호(tel), 전자우편주소(email)의 값으로 갖도록 하시오.
- delete 작업은 원소의 position(위치) 값을 주는 경우 해당 원소를 삭제하는 delete1()것과,
전화번호를 입력하면 해당 원소를 삭제하는 delete2()를 구현하시오.
- 본인의 정보를 포함하여 7개의 원소에 list를 insert하고, 5번째 원소를 출력, 4번째 원소를 삭제한 다음
list의 전체 원소를 출력하시오.
- 또한 자신의 전화번호를 입력으로 해서 delete2() 함수를 호출하여 , 자신의 정보를 삭제하고, 전체 원소를 출력하시오.
이거구요, 참고할 코드는 아래 있는건데요. 제발 도움좀 주셨으면 감사하겠습니다 ㅠㅠ
#define MAX 100
typedef struct listRecord
{
int Count;
int Data[MAX];
} listType;
void Insert(listType *Lptr, int Position, int Item);
void Delete(listType *Lptr, int Position);
void Retrieve(listType *Lptr, int Position, int *ItemPtr);
void Init(listType *Lptr);
bool IsEmpty(listType *Lptr);
int Length(listType *Lptr);
void Init(listType *Lptr)
{
Lptr-count = 0;
}
bool IsEmpty(listType *Lptr)
{
return (Lptr-Count == 0);
}
void Insert(listType *Lptr, int Position, int Item)
{
if (Lptr-Count == MAX)
printf(List Full);
else if ((Position (Lptr-Count+1)) || (Position 1))
printf(Position out of Range);
else
{
for (int i = (Lptr-Count-1); i = (Position-1); i--)
Lptr-Data[i+1] = Lptr-Data[i];
Lptr-Data[Position-1] = Item;
Lptr-Count += 1;
}
}
-
볼수록중독
리스트계열은 이 사이트뿐 아니라 각종 검색엔진을 통해 검색하면 아주 다양한 언어로 작성된, 다양한 형태의 리스트가 나옵니다.
혼자 저정도 짜실수 있는 정도라면 웹상에 올라와있는 각종리스트를 이해하고, 재해석하는 것도 그리 어렵진 않을겁니다.
가장 기본적인 형태인데다 엄청 쉬운자료구조니까요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2700400 | 원넓이를 계산이요 ㅜㅜ | 천칭자리 | 2025-07-04 |
2700368 | if에 관해서 질문이요... | Orange | 2025-07-04 |
2700339 | 이거 결과값이 왜이런건지.. (4) | 그댸와나 | 2025-07-04 |
2700313 | 파일 읽어서 저장하는데 빈파일일 경우 문재가 발생하네요.. (2) | 크나 | 2025-07-03 |
2700287 | 구조체 동적할당 연습을 하는데 오류가 뜹니다...(해결) (3) | 아련나래 | 2025-07-03 |
2700264 | 문자와 숫자 동시에 입력??? | 글고운 | 2025-07-03 |
2700236 | txt파일로만 쓰고 읽게 하려면 어떻게 해야 하나요..?? (8) | 미국녀 | 2025-07-03 |
2700211 | 전위 연산자 (2) | 어른처럼 | 2025-07-02 |
2700183 | C에서 파일이름을 받고, 그 파일의 사이즈를 출력해줘야하는데 내용이 출력이 안되네요 ;ㅅ; | 피스케스 | 2025-07-02 |
2700150 | 꼭좀 도와주세요ㅠㅠㅠ | 호습다 | 2025-07-02 |
2700095 | 연산문제...질문... | 오빤테앵겨 | 2025-07-01 |
2700070 | while문 , 3의배수 출력하는 프로그램좀 짜주세욤. | 횃불 | 2025-07-01 |
2700041 | 초보인데요 ㅎ 배열안에 배열을 집어넣을수 있나요?? | 헛장사 | 2025-07-01 |
2700012 | 배열// (1) | 전갈자리 | 2025-07-01 |
2699895 | 무한루프에 빠집니다.!! 해결좀부탁드려요 (10) | 선아 | 2025-06-30 |
2699842 | 질문을 너무 많이 하네여.....죄송.... (2) | 해님꽃 | 2025-06-29 |
2699816 | 오류 질문입니다.. (1) | 해비치 | 2025-06-29 |
2699763 | 질문입니다 ! 꼭 좀 도와주세요ㅠㅠ (2) | 미라 | 2025-06-28 |
2699555 | c언어 다항식을 입력을 했는데 왜 출력이 안될까요? | 피스케스 | 2025-06-27 |
2699528 | C언어 포인터연산 질문입니다. (3) | 안녕나야 | 2025-06-26 |