Team Study/Baek Joon
[Baek Joon/ C ] 10926번_??!
Sumni Life
2021. 5. 11. 16:29
문제
준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오.
입력
첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다.
출력
첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다.
문제풀이
※ 저는 알파벳 소문자로만 입력하는건 적용하지 않았습니다!
몇일전에 파일과 입출력을 배웠기 때문에 그걸 활용해서 문제를 풀어봤습니다.
1. 아이디 입력받기
2. id.txt 파일 확인하기
3. 구조체변수와 id 비교하기
4. 동일한 아이디가 있을 경우 ??!를 출력하기
(활용)동일한 아이디가 없을 경우 입력값 저장하기
>> 활용 부분은 주말에 만들어서 코드 넣을게요 o(〃^▽^〃)o
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
struct IDcheck
{
char id[50];
};
int main(void)
{
FILE* fp;
struct IDcheck idcheck;
char id[50];
int res;
fp = fopen("id.txt", "r+");
if (fp == NULL)
{
printf("파일을 찾지 못했습니다.");
return 1;
}
while (1)
{
res = fscanf(fp, "%s", idcheck.id); //fscanf에서 변수에 저장
if (res == EOF)
{
break;
}
}
// 키보드 입력
// 구조체 멤버랑 입력받은 값이랑 비교
printf("id를 입력하세요 : ");
scanf("%s", id);
if (strcmp(id, idcheck.id) == 0)
{
printf("??!");
}
else
{
printf("사용할수 있는 아이디입니다.");
}
return 0;
}