디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

형들 배열을 이용한 리스트 ADT 테스트 프로그램인데 꼭좀 봐줘

메이델레스(118.40) 2014.03.31 21:16:12
조회 2345 추천 0 댓글 2

#include <stdio.h>
#include <stdlib.h>
#define MAX_LIST_SIZE 100  // 배열의 최대 크기

typedef int element;
typedef struct
{
 int list[MAX_LIST_SIZE];  // 배열 정의
 int length;      // 현재 배열에 저장된 자료들의 개수
} ArrayListType;
            
// 오류 처리 함수
void error(char *message)
{
 fprintf(stderr, "%s\n", message);
 exit(1);
}

// 리스트 초기화
void init(ArrayListType *L)
{
 L -> length = 0;
}

// 리스트가 비어 있으면 1을 반환
// 그렇지 않으면 0을 반환
int is_empty(ArrayListType *L)
{
 return L -> length == 0;
}

// 리스트가 가득 차 있으면 1을 반환
// 그렇지 않으면 0을 반환
int is_full(ArrayListType *L)
{
 return L -> length == MAX_LIST_SIZE;
}

// 리스트 출력
void display(ArrayListType *L)
{
 int i;
 for(i=0; i<L->length; i++)
  printf("%d\n", L -> list[i]);
}

// position : 삽입하고자 하는 위치
// item : 삽입하고자 하는 자료
void add(ArrayListType *L, int position, element item)
{
 if(!is_full(L) && (position >= 0) && (position <= L -> length))
 {
  int i;
  for(i=(L -> length-1); i>=position; i--)
   L->list[i+1] = L->list[i];
  L->list[position] = item;
  L->length++;
 }
}

// position : 삭제하고자 하는 위치
// 반환 값 : 삭제되는 자료
element delete(ArrayListType *L, int position)
{
 int i;
 element item;

 if(position < 0 || position >= L -> length)
  error("위치 오류");
 item = L->list[position];

 for(i=position; 1<(L -> length-1); i++)
  L->list[i] = L->list[i+1];
 L->length--;
 return item;
}

//
main()
{
 ArrayListType list1;
 ArrayListType *plist;

 // ListType을 정적으로 생성하고 ListType을 가리키는
 // 포인터를 함수의 매개 변수로 전달한다.
 init(&list1);
 add(&list1, 0, 10);
 add(&list1, 0, 20);
 add(&list1, 0, 30);
 add(&list1, 0, 40);
 add(&list1, 0, 50);
 display(&list1);

 // ListType을 동적으로 생성하고 ListType을 가리키는
 // 포인터를 함수의 매개 변수로 전달한다.
 plist = (ArrayListType *)malloc(sizeof(ArrayListType));
 init(plist);
 add(plist, 0, 10);
 add(plist, 0, 30);
 add(plist, 0, 20);
 add(plist, 0, 10);
 display(plist);
 free(plist);
}

 

 

 

 

 

이 소스에다가           

 

함수 : replace(list,pos,item)

 

 

 replace함수를 추가로 작성해서 넣고,
main함수에서 add, delete, replace등을 수행한후 그 결과를 출력하도록 수정해야하는데 어케 해야돼?

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 모태 솔로도 구제해 줄 것 같은 연애 고수 스타는? 운영자 25/07/21 - -
413518 야 C언어 좆밥문제인데 좀 봐줘봐 [1] 유동새끼(125.139) 14.03.20 69 0
413517 웹개발을꿈꾸는자 [1] ㄹㄹ(39.7) 14.03.20 139 0
413516 한이음 맨토링 아는 갤러 있나요¿ [5] 요미코번역인(175.223) 14.03.20 112 0
413515 형들 나 1학년때 프로그래밍 수업안들어서 [2] 코델리아(211.36) 14.03.20 98 0
413513 프로그래밍 극초본데 질문좀 받아줘 파일입출력 [3] ㅇㅇ(168.115) 14.03.20 79 0
413512 더하기도 안됨 [4] ㅇㅇ(1.233) 14.03.20 71 0
413511 사장 형의 약한 모습 처음이야... [1] 허세갑(121.183) 14.03.20 83 0
413510 한국에파이썬으로만들어진사이트있나여 [2] (211.201) 14.03.20 197 0
413509 프로그래밍 [2] 기모찌핰(211.201) 14.03.20 107 0
413507 안드로이드웨어나온거봄? (211.201) 14.03.20 54 0
413506 한국 IT일은 제조업 아닙니까? [5] ㄴㅇ(14.36) 14.03.20 124 0
413505 뉴비가 질문 올리겠습니다. QTRAIN갤로그로 이동합니다. 14.03.20 54 0
413504 matlab 잘하는형들 도와조 조댕(203.252) 14.03.20 62 0
413503 아오 시바 오늘은 몸이 영 아니니 개발이고 지롤이고 사장(223.62) 14.03.20 55 0
413502 유니티 쓸려면 c#다배워야함? [6] 게2바4장갤로그로 이동합니다. 14.03.20 298 0
413501 재계 “액티브X, 액티브하게 X표 쳐달라” 허세갑(121.183) 14.03.20 70 0
413500 개발자가 되어서는 절대 안되는 사람들 [4] 사장(223.62) 14.03.20 276 3
413499 파이썬으로 만든 게임 teaminfinite(39.115) 14.03.20 163 0
413498 버스카드 원리가 뭐임? [4] 혹시?(223.33) 14.03.20 162 1
413497 개발은 젊을 때만 잠깐 하는게 맞는거 같다 [2] 사장(223.62) 14.03.20 169 0
413496 엪샾 재밌네 (112.217) 14.03.20 73 0
413495 아무리 생각해도 이건 아닌거 같다 [5] 사장(223.62) 14.03.20 141 0
413494 니들은 왜 개발하려고 하냐?? [1] 사장(223.62) 14.03.20 97 0
413493 한국IT 환경 좋다 허세갑(121.183) 14.03.20 103 2
413492 우분투에서 redis 사용하려고하는데 질문좀요! [5] 삽질공돌이(121.146) 14.03.20 175 0
413491 자기가 만든밥이 맛있다는 착각이 드는거랑 자기가 만든 게임이 재미있다고 우뢰매(123.157) 14.03.20 71 0
413490 게임아카데미 나오면 취업은 되냐 [3] ㅇㅁㄴㅇ(180.231) 14.03.20 335 0
413488 원래 32비트 이클립스에서 작업했던거 64비트 이클립스에선 안띄워짐? ㅇㅇ(125.143) 14.03.20 104 0
413487 엉어으어어응요미고오도개욤ㅠ연마르정샹심ㅁr논더냇소ㅠ [3] yomiko(211.59) 14.03.20 84 0
413486 내가 재밌는 게임을 만들면 [1] 세일은언제나하지갤로그로 이동합니다. 14.03.20 105 0
413483 형들 자바 배우고있는 초보공대생인데 이거 오류 왜 나는지 잘 모르겠어.. [3] 타햐갤로그로 이동합니다. 14.03.20 147 0
413481 꼭 공부 못하는 애들이 커리큘럼 탓을 하더라 [5] ㅇㅇ(211.36) 14.03.20 163 2
413480 이번에 ocjp 땃는데 [1] ㅇㅅㅇㅗ(223.62) 14.03.20 166 0
413479 외우는것과 이해하는 것의 차이 [4] (178.162) 14.03.20 206 0
413478 영화 말죽거리 잔혹사 와 내가 하는 일에 대한 공톰점 ssonacy갤로그로 이동합니다. 14.03.20 56 0
413477 야 나좀 도와줘 didi(1.255) 14.03.20 63 0
413476 C언어 코딩관련 초보적인 질문2! [10] 초보늅늅(175.195) 14.03.20 201 0
413475 컴구조 잘 아시는 분만 [8] dd(112.161) 14.03.20 147 0
413474 한국식 교육이 프로그래어에 맞지가 않아 [11] 좃데이갤로그로 이동합니다. 14.03.20 211 1
413473 요즘 나오는 게임은 억지로 재밌을려고 한다 [2] 세일은언제나하지갤로그로 이동합니다. 14.03.20 126 0
413472 형들 플래시에서 쓰는 게시판 망보드 알아? NiceFellow갤로그로 이동합니다. 14.03.20 96 0
413471 국비교육프로그래밍 그런거 괜찬냐? [3] 456(121.188) 14.03.20 267 0
413468 C언어(자료구조) 질문좀 받아줘형들 zz(1.235) 14.03.20 117 0
413467 장몸비잘 하니까 사람들이 안 오네 관노(203.226) 14.03.20 61 0
413466 우리나라 IT가 노답인 이유는 웹사이트 회원가입이나 결제만 봐도 됨 [3] ㅁㄴㅇㄹ(76.191) 14.03.20 394 0
413465 1:1 채팅프로그램 만들었다. [3] 수크라제갤로그로 이동합니다. 14.03.20 164 0
413464 공부하면서 휴식은 필요없지... 허세갑(175.223) 14.03.20 172 0
413463 float number = input.nextFloat(); 안되요.. 행님들(183.108) 14.03.20 138 0
413462 매틀랩 잘하시는분 도와주세요 [3] 과제과제(61.255) 14.03.20 145 0
413461 노트북 모니터는 제발 크기지랄 하지말고 시야각이나봐라 [1] 개븅신아(223.62) 14.03.20 226 0
뉴스 Mnet '보이즈 2 플래닛', 두 개의 플래닛 중 ‘K’ 참가자 데뷔 경쟁 본격 돌입 디시트렌드 07.18
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2