(C++)无限制的输入字符串,将其以空白符(’ ‘,’\n’,’\r’,’\t’)隔开的每个单词首字母大写以后输出该字符串
测试输入:I am good student.
net work.
预计输出:I Am Good Student.
Net Work.
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main(){
int i=0;
char str[100]=" ";//初始化第一个字符是空,将所输入的字符串都在空后面
//cin.getline(str,100);
while(gets(str + 1) != NULL){
//空白符后面的第一个字符是单词首字母
for(i=0;i<strlen(str);i++){
if((str[i]==' '||str[i]=='\t'||str[i]=='\r'||str[i]=='\n')&&str[i+1]>='a'&&str[i+1]<='z'){
str[i+1]-=32;
}
}
for(i=0;i<strlen(str);i++)
printf("%c",str[i]);
printf("\n");
}
}
运行结果截图: