タスク3


/*(3‐1)1行の文字を入力し,その中にどれだけの単語があるかを統計する.各2つの単語の間にスペース(複数可能)で区切られたり、句読点(.;?!の5種類のみを考慮)で区切られたりします.入力:How old are your?   I am    20.出力:There are 7 words in the line.【知識点:文字配列】*アルゴリズム説明:*/#include#include“string.h”using namespace std;int main(){}/*(3‐2)仕様のテキストとは,行頭の最初の文字がスペースではないこと,2つの単語の間には1つのスペースしかなく、1つのスペースが必要です.句読点の前は単語の最後のアルファベットで、後ろにはスペースが1つしかありません.タイトル要求:1行の文字を入力し、それを規範的なテキストに整理して出力します.句読点は,.;?!全部で5種類です.「:How old are your?I am 20.It is tooold."出力:":How old are your?I am 20.It is tooold."処理後の結果の解読:出力するテキストの先頭に先頭のスペースがなく、2つの単語の間に複数のスペースがある場合は1つしか残っておらず、句読点の後にスペースがない場合は1つ追加します.ヒント:別の文字配列を設定し、入力した文字配列を1つずつチェックし、保存した文字を過去にコピーし、余分なスペースをコピーせず、追加するスペースを追加できます.もちろん、元の文字配列に直接することもできます.*アルゴリズムの説明:
#include <iostream>
#include "string.h"
using namespace std;
void check_word(char ch[100]);
int count=0;
int main()
{
	char ch[100];
	
	cin.getline(ch,100);

	check_word(ch);

	cout<<"There are "<<count<<" words in the line."<<endl;
	
	return 0;
}
void check_word(char ch[100])

{

	for(int i=0;ch[i]!='\0';i++)
	{
		if((ch[i]==' '||ch[i]==','||ch[i]==';'||ch[i]=='.'||ch[i]=='!'||ch[i]=='?')&&ch[i+1]!=' ')count++;
	}
}