我最讨厌字符串处理的题了......
#include<iostream>
using namespace std;
int tot;
bool over=true;
bool cap(char c)
{
if(c>='A'&&c<='Z') return true;
else return false;
}
bool letter(char c)
{
if(c>='A'&&c<='Z'||c>='a'&&c<='z') return true;
return false;
}
int main()
{
int i,j,k;
char c;
// freopen("u1038.in","r",stdin);
// freopen("u1038.out","w",stdout);
while((c=getchar())!=EOF)
{
if(c=='.'||c=='!'||c=='?')
{ over=true; continue; }
if(!letter(c)) continue;
if(over&&!cap(c)) tot++;
over=false;
c=getchar();
while(letter(c))
{
if(cap(c)) tot++;
c=getchar();
}
if(c=='.'||c=='!'||c=='?') over=true;
}
printf("%d/n",tot);
return 0;
}