블루 브리지컵 제5회 성 경기 빈칸 채우기 문제[문자열 문제]
부록:cin.ignore();cin.get ()//원하지 않는 리턴, 스페이스 바 등 문자를 건너뛰기
1、cin>>
사용법 1: 가장 기본적이고 가장 일반적인 사용법으로 숫자를 입력합니다.
#include
using namespace std;
main ()
{
int a,b;
cin>>a>>b;
cout<
입력: 2[캐리지 리턴] 3[캐리지 리턴] 출력: 5
주의: >>는 보이지 않는 문자 (예를 들어 스페이스 바 리턴, TAB 등) 를 필터합니다.cin>noskipws>>input[j];//공백 문자를 생략하고 싶지 않으면noskipws 흐름 제어를 사용하십시오
사용법 2: 공백, TAB, 캐리지 리턴으로 끝나는 문자열을 적용합니다.
#include
using namespace std;
main ()
{
char a[20];
cin>>a;
cout<
입력:jkljkljkl 출력:jkljkl
입력: jkljkl jkljkl//공백을 만나 출력 종료: jkljkl
2、cin.get()
용법1:cin.get (문자 변수 이름) 은 문자를 수신할 수 있습니다
#include
using namespace std;
main ()
{
char ch;
ch=cin.get(); // cin.get(ch);
cout<
입력:jljkljkl 출력:j
용법2:cin.get (문자 그룹 이름, 수신 문자 수) 은 문자열을 수신하는 데 사용되며, 빈칸을 수신할 수 있습니다
#include
using namespace std;
main ()
{
char a[20];
cin.get(a,20);
cout<
입력: jkl jkl 출력: jkl jkl
입력: abcdeabcdeabcdeabcdeabcdea(25자 입력) 출력: abcdeabcdeabcdeabcd (19자 수신 + 1'\0')
용법3:cin.get(파라미터 없음) 파라미터가 없는 것은 입력 흐름에 필요하지 않은 문자를 버리거나 리턴을 버려서cin을 보완하는 데 사용됩니다.get (문자 그룹 이름, 수신 문자 수) 의 부족입니다.
이것은 아직 어떻게 쓰는지 모르겠습니다. 아시는 선배님께서 가르쳐 주십시오.
3、cin.getline ()//문자열을 받아들여 빈칸을 받고 출력할 수 있습니다
#include
using namespace std;
main ()
{
char m[20];
cin.getline(m,5);
cout<
입력:jkljkljkl 출력:jklj
m에 다섯 글자를 받아들이고 그 중 마지막은'\0'이기 때문에 네 글자만 출력됩니다.
만약 5를 20:입력:jkljkljkl 출력:jkljkljkl로 바꾸면
입력: jklf fjlsjf fjsdklf 출력: jklf fjlsjf fjsdklf
//확장://cin.getline () 는 실제로 세 개의 매개 변수가 있습니다,cin.getline (문자열을 받아들일 때 m, 5를 받아들일 때, 끝 문자를 받아들일 때)//세 번째 인자가 생략될 때 시스템은 기본적으로 '\0' 입니다./예를 들어cin을 사용합니다.getline () 을cin으로 변경합니다.getline(m,5,’a’);jlkjkljkl을 입력할 때 jklj를 출력하고 jkaljkljkl을 입력할 때 jk를 출력합니다
다차원 그룹에 사용할 때cin도 사용할 수 있다.getline(m[i], 20) 등의 용도:
#include
#include
using namespace std;
main ()
{
char m[3][20];
for(int i=0;i<3;i++)
{
cout<<"
"<1<<" :"<cin.getline(m[i],20);
}
cout<for(int j=0;j<3;j++)
cout<<" m["<"] :"<
첫 번째 문자열을 입력하십시오: kskr1
두 번째 문자열을 입력하십시오: kskr2
세 번째 문자열을 입력하십시오: kskr3
출력 m[0]의 값: kskr1 출력 m[1]의 값: kskr2 출력 m[2]의 값: kskr3
4.getline()//공백을 받고 출력할 수 있는 문자열을 받아들입니다. "#include"를 포함해야 합니다.
#include
#include
using namespace std;
main ()
{
string str;
getline(cin,str);
cout<
입력:jkljkljkl 출력:jkljkl
입력: jkl jfksldfj jklsjfl 출력: jkl jfksldfj jklsjfl
화cin.getline ()는 유사하지만cin.getline ()는istream 흐름에 속하고 getline ()는string 흐름에 속하며 다른 두 함수입니다
블루 브리지 컵 성 경기의 빈 칸을 채우는 문제
#include
using namespace std;
#include
int get_word_num(char* buf)
{
int n = 0;
int tag = 1;
char * p = buf;
for(;*p!=0 && *p!=13 && *p!=10;p++)
{
if(*p==' '&&tag==0)
tag=1;
if(*p!=' '&&tag==1)//
{
n++;
tag=0;
}
}
return n;
}
int main()
{
char buf[1000];
// fgets(buf,1000,stdin);
cin.getline(buf,1000);// cin>>buf
printf("%d
", get_word_num(buf));
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.