ACM_Uppercase(水题)
Uppercase
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
给出一句中间无特殊符号的英语句子,要求将各单词的首字母改大写。
Input:
先输入n,表示有n组测试数据,下面每一组数据为一句英语,且句子总长度不超过100。
Output:
输出每一组数据修改后的句子。
Sample Input:
3 hello world! i am understand! how are you!
Sample Output:
Hello World! I Am Understand! How Are You!
解题思路:水题!!!思路很简单,先将首字母改成大写,再依次遍历字符串,当a[i-1]是空格字符' '且a[i]是小写字母时,就将其换成大写字母,水过。
杭电hdu2026与此题一样,题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2026
AC代码:
1 #include<bits/stdc++.h> 2 using namespace std; 3 int main() 4 { 5 char a[101];int n; 6 cin>>n;getchar(); 7 while(n--){ 8 gets(a); 9 if(a[0]>='a'&&a[0]<='z')a[0]=a[0]-32; 10 for(int i=2;i<(int)strlen(a);i++) 11 if(a[i-1]==' ' && (a[i]>='a'&&a[i]<='z'))a[i]-=32; 12 cout<<a<<endl; 13 } 14 return 0; 15 }