구조체 배열 있는 메모리 삭제에 관하여 ㅠㅠ
아이돌
질문 제목 : 구조체 배열 있는 메모리 삭제에 관하여 ㅠㅠ소스 info에저장된 내용이랑 std에 들어있는 내용을 삭제할수있는 소스를 만들고싶어요 ㅠㅠ
만들어주시..면 감사하겠습니당..이소스에 적용시켜서..부탁드림니다.고수님들질문 내용 :
#include stdio.h
#include string.h
#define max 7
typedef struct data
{
char subject[100][30]; // 도서명
char name[100][30]; // 저자명
int number;// 코드
bool loan;//대출
}data;
data info[max];
data std[max];
int i;
int input(void);
void action(int*);
void display(void);
void bookname();
void input_list();
void infom ();
void book_del();
int main (void)
{
int menu =0;
while(menu!=5)
{
display();
menu=input();
action (&menu);
}
return 0;
}
void bookname()
{
static int i = 0;
printf(도서명을 입력해주세요:\n);
scanf(%s,std[i].subject);
printf(도서명의 저자를 입력해주세요:\n);
scanf(%s,std[i].name);
printf(책을 저장할 코드를 입력해주세요:\n);
scanf(%d, &std[i].number);
std[i].loan=1;
i++;
}
void infom ()
{
static int i=0;
printf(도서 코드를 입력하세요: 0~2\n);
scanf(%d, &i);
printf(책이름:%s,저자명:%s,코드번호:%d \n, std[i].subject,std[i].name,std[i].number);
printf(대출자이름을 입력해주세요:\n);
scanf(%s,info[i].subject);
printf(대출자 주소를 입력해주세요:\n);
scanf(%s,info[i].name);
printf(대출자 전화번호를 입력해주세요:\n);
scanf(%d, &info[i].number);
i++;
}
void input_list()
{
for(i=0;imax;i++)
{
printf(책이름:%10s\t저자명:%10s\t코드번호:%d\t \n, std[i].subject,std[i].name,std[i].number,std[i].loan);
printf(대출자이름:%10s\t주소:%10s\t전화번호:%d\t \n, info[i].subject,info[i].name,info[i].number,info[i].loan);
printf(\n);
}
}
void display(void)
{
printf(★★★★★메뉴★★★★★\n);
printf(★★★1.도서명저장★★★\n);
printf(★★★2.도서 현황★★★\n);
printf(★★★3.도서 삭제★★★\n);
printf(★★★★4.대 출★★★★\n);
printf(★★★★5.종 료★★★★\n);
}
int input(void)
{
int menu;
printf(당신의 선택은 : );
scanf(%d, &menu);
return menu;
}
void action(int *menu)
{
switch(*menu)
{
case 1:
bookname();
break;
case 2:
input_list();
break;
case 3:
break;
case 4:
infom();
break;
case 5:
break;
default:
printf(잘못된 입력입니다. 다시 입력해주세요\n);
}
}
void book_del()
{
-
오나미
ㅠㅠ 생각은 그렇게 했는대 ;; 어떻게 적용 시켜야 할지모르겠서요 ;;
-
초고리
삭제를 어떻게 해야하는지 방법을 알려주셔야 할듯 단순히 이름 없음 없음 없음 이런식이나
아니면 하나를 지우면 코드 번호가 순차적으로 12345 이렇게
예를 들어 3번 삭제하면
12 45 남으니
1234 로 변경해야 된다거나 이렇게 되면 링크드리스트를 써야할지도..
자세하게 쓰고 되도록이면 혼자서 해보세요! 거의다 한거 같은뎅