봐주세요.. 전화번호부 관리 프로그램
Aileen
#includestdio.h#includeconio.h#includestdlib.h#includestring.h#pragma warning(disable : 4996)typedef struct _mark {char name[20];char pone[20];} mark;int * ptr1[200] = (mark *)malloc(sizeof(mark));int i=0;int Insert(void){ puts([INSERT]\INput name : ); scanf(scanf(%s, ptr1[i]-name); puts(Tel : ); scanf(%s, ptr1[i]-pone); i++; return 0;}int Delete(void){ char na[200]; int j=0; scanf(%s, na); while(1){ if(ptr1[j]-name==na){ ptr1[j]-name=0; ptr1[j]-pone=0; } j++; if(j==200){ break;} } return 0;}int search(void){ int j=0; char nam[200]; scanf(%s, nam); while(1){ if(ptr1[j]-name==nam){ printf(이름 : %s \n 폰번 : %s,ptr1[j]-name,ptr1[j]-pone); break; } if(j==200){ printf(없는 이름 입니다.); } } return 0;}int PrintAll(void){ int j=0; while(1){ if(ptr1[j]-name==0){ j++; continue; } else { j++; printf(이름 : %s \n 폰번 : %s\n,ptr1[j]-name,ptr1[j]-pone); } if(j==200){ break;} } return 0;}
int main(void){int Z;int b=0;while(1){ printf(***** MENU *****\n1.Insert\n2. Delete\n3. Search\n 4.Print All\n5.Exit\nChoose the item : ); scanf(%d,&Z); switch(Z){ case 1: Insert(); break; case 2: Delete(); break; case 3: search(); break; case 4: PrintAll(); break; case 5: return 0; break; default: puts(잘못 선택 하셨습니다.); }system(PAUSE);return 0;}
이렇게 했는데 에러가.. 쫘악.....ㅠㅠㅠ무슨문제이온지..그리고..최대 몇까지 난수를 표현하려할때 어떻게 입력을 해야 될까요
-
김슬픔 2024-04-02
감사합니다~
-
서리서리 2024-04-02
똑같은 질문이 있었네. 이전 질문에 어느 정도 글을 남겼습니다. 확인하세요.
-
네코 2024-04-02
네 ㅎㅎ 그렇게되겟네요
-
겨레 2024-04-02
아... 그러면 %100인가요?
-
세리 2024-04-02
rand()%9+1 하엿을때 1~9 까지나오는 이유는 +1을 하지않앗을경우 나올수잇는수가 9로나눈 나머지로 나올수잇는 0~8까지인데 그경우에서 +1을 할경우 1~9가되기때문입니다.
-
든솔 2024-04-02
아닙니다 %99하시면 0~98까지가 됩니다
99로 나눠서 나올수잇는값은 0~98까지가 되기때문입니다.
그리고또한 rand()만 할시 프로그램을 새롭게 실행을해도 같은값이 나올것입니다.
그걸 해결하기위해 srand();라는것에 인자에다가 숫자를넣어서 랜드테이블이라는 곳에서 임의의
숫자들을 가져오는데 이것역시 랜덤으로 하기위해 #includetime.h 하신후 srand(time(NULL));이라고
메인함수 에 함수를 호출해주야됩니다..
음.. 설명히 이상 -
뿡뿡 2024-04-02
감사합니다
rand()%99 하면 0~99가되겠군요 감사감사 -
눈내리던날 2024-04-02
난수는
rand()%10하면 0~9까지 1~9까지 할려면
rand()%9+1하심되요 폰이라 간단히 알려드리네요 죄송합니다