본문 바로가기

프로그래밍/C, C++

[C언어] 주소록에 이름과 전화번호를 입력하여 찾는 프로그램

728x90
반응형

 

 

[C언어] 주소록에 이름과 전화번호를 입력하여 찾는 프로그램


 

 

#include<stdio.h>
#include<string.h>
int main()
{
	char NAME[3][20], PHONE[3][20], SUCH[1][20];
	int i, count = 0;
	/*이름과 전화번호를 배열에 저장*/
	for (i = 0; i < 3; i++)
	{
		printf("%d st 사람 이름 : ", i + 1);
		scanf("%s", &NAME[i]);
		printf("%d st 사람 전화번호 : ", i + 1);
		scanf("%s", &PHONE[i]);
	}
	/*for (i = 0; i < 3; i++)
	{
	   printf("%s     %s\n", NAME[i], PHONE[i]);
	}*/
	while (1)
	{
		/*찾을 사람을 SUCH[0]에 저장*/
		printf("\n찾을 사람의 이름 (종료 : END) : ");
		scanf("%s", &SUCH[0]);
		/*printf("SUCH[0]에 저장된 값 '%s'\n", SUCH[0]);*/
		/*END를 입력하면 종료*/
		if (strcmp(SUCH[0], "END") == 0) break;
		/*동일한 이름이 있는지 확인 없으면 카운트 증가*/
		for (i = 0; i < 3; i++)
		{
			if (strcmp(SUCH[0], NAME[i]) == 0) printf("\n%s\n", PHONE[i]);
			else count += 1;
		}
		/*카운트가 3이면 없는 번호*/
		if (count == 3) printf("\n저장되어 있지 않는 사용자입니다.\n");
		count = 0;
	}
	return 0;
}

 

2차원 배열을 사용하여 주소록을 만들고

 

이름과 전화번호를 입력받아 저장한 후

 

while문을 돌려 이름을 입력하면 전화번호를 출력하도록

 

만들었따ㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏ

 

첨에 문자열을 비교해야해서 어찌할줄 몰랐는데

 

string.h의 strcmp라는 함수를 쓰면되는거임

 

 

여튼

 

오늘도 꿀잠

 

ㅋㅋㅋㅋ

728x90
반응형