728x90
공백 문자가 포함되어 있는 문장을 입력받고 그대로 출력해보자.
공백이 포함되어 있는 한 문장이 입력된다.
단, 입력되는 문장은 여러 개의 단어로 구성되고, 엔터로 끝나며,
최대 길이는 2000 문자를 넘지 않는다.
#include <stdio.h>
int main(){
char data[2001];
fgets(data, 2000, stdin);
printf("%s", data);
return 0;
}
scanf의 경우 문자열의 끝을 공백이나 엔터(개행)로 인지하기에
띄어쓰기가 있는 문자열을 입력받을 때 문제가 생긴다.
그러나 fgets 함수를 사용하면 공백이 포함된 문자열을 받아올 수 있다.
엔터(개행)이 입력되면 입력이 멈춘다.
fgets함수에 대해 쉽게 설명하면
fgets(저장할 배열의 주소, 값의 최대 개수, 값을 받아올 곳) 으로 선언할 수 있다.
stdin은 키보드 입력 값을 의미한다.
다른 방법으로는 gets 함수와 puts 함수를 사용할 수 있다.
#include<stdio.h>
int main()
{
char chr[2100];
gets(chr);
puts(chr);
return 0;
}
728x90
'코딩 > CodeUp' 카테고리의 다른 글
코드업 1024 : [기초-입출력] 단어 1개 입력받아 나누어 출력하기 (0) | 2023.06.02 |
---|---|
코드업 1023 : [기초-입출력] 실수 1개 입력받아 부분별로 출력하기 (0) | 2023.06.01 |
코드업 1021 : [기초-입출력] 단어 1개 입력받아 그대로 출력하기 (0) | 2023.06.01 |
코드업 1020 : [기초-입출력] 주민번호 입력받아 형태 바꿔 출력하기 (0) | 2023.06.01 |
코드업 1019 : [기초-입출력] 연월일 입력받아 그대로 출력하기 (0) | 2023.06.01 |