안녕하세요. 혀코입니다.
이번 시간에는 문자열을 입력받아 그대로 출력하는 방법에 대해서 알아보겠습니다.
문자열을 받을 때는 %s를 사용해서 받습니다.
#include <iostream>
int main() {
char a[51];
scanf("%s",a);
printf("%s",a);
return 0;
}
정수와 문자를 받을 때와는 달리 char에 받을 문자열의 개수를 지정해 주고, scanf로 데이터를 저장할때 레퍼런스기호를 붙이지 않는 것이 특징입니다.
빈칸을 포함한 문장을 받을 때는 fgets 함수를 사용합니다.
#include <iostream>
int main() {
char data[2001];
fgets(data, 2000, stdin);
printf("%s",data);
return 0;
}
다음은 실수를 받아서 정수부와 소수점 이하 부분을 나눠서 출력하는 방법입니다.
#include <iostream>
int main() {
int data, data2;
scanf("%d.%d",&data,&data2);
printf("%d\n%d",data,data2);
return 0;
}
다음은 단어1개를 입력받아서 한줄에 한 문자씩 따옴표 안에 출력하는 방법입니다.
#include <iostream>
int main() {
char d[30];
scanf("%s",d);
for(int i = 0; d[i] != '\0'; i++) {
printf("\'%c\'\n",d[i]);
}
return 0;
}
다음은 다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력하는 방법입니다.
#include <iostream>
int main() {
int a, b, c, d, e;
scanf("%1d%1d%1d%1d%1d",&a,&b,&c,&d,&e);
printf("[%d]\n",a*10000);
printf("[%d]\n",b*1000);
printf("[%d]\n",c*100);
printf("[%d]\n",d*10);
printf("[%d]",e);
return 0;
}
다섯 자리의 정수를 1개 받아서 각 자리별로 나눠 데이터를 입력할떄는 %1d 형식으로 받아 저장하면 됩니다.
이렇게 문자열을 입력받아 그대로 출력하는 방법에 대해서 알아봤습니다.
유용하셨다면, 공감과 구독 부탁 드립니다.
감사합니다. :)
댓글