首字母变大写
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 45549 Accepted Submission(s): 25284
Problem Description
输入一个英文句子,将每个单词的第一个字母改成大写字母。
Input
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。
Output
请输出按照要求改写后的英文句子。
Sample Input
i like acm i want to get an accepted
Sample Output
I Like Acm I Want To Get An Accepted
----------------------------------------------------
#include<cstdio>
#include<cstring>
int main()
{
char a[101];
while(gets(a))//gets()和scanf()的区别在于输入的字符串是否中间有空格,此处不能用scanf("%s",a);
{
for(int i=0;i<strlen(a);i++)
{
if(i==0||a[i-1]==' ')
a[i]-=32;
}
for(int j=0;j<strlen(a);j++)
{
printf("%c",a[j]);
}
printf("\n");
}
return 0;
}
------------------------------------------------------
gets返回的值是输入的字符串a,scanf返回的是输入的变量的个数,因此写法应为
while(gets(a))或while(scanf(‘%s“,a)!=EOF)
但是gets()和scanf()的区别在于输入的字符串是否中间有空格,此处不能用scanf();