1. 程式人生 > >演算法筆記 — 首字母大寫

演算法筆記 — 首字母大寫

 

題目連結:http://www.codeup.cn/problem.php?cid=100000580&pid=1

題目描述

對一個字串中的所有單詞,如果單詞的首字母不是大寫字母,則把單詞的首字母變成大寫字母。
在字串中,單詞之間通過空白符分隔,空白符包括:空格(' ')、製表符('\t')、回車符('\r')、換行符('\n')。

輸入

輸入一行:待處理的字串(長度小於100)。

輸出

可能有多組測試資料,對於每組資料,
輸出一行:轉換後的字串。

樣例輸入

if so, you already have a google account. you can sign in on the right.

樣例輸出

If So, You Already Have A Google Account. You Can Sign In On The Right.

 

#include<iostream>
#include<cstring>
using namespace std;
int main(){
	char a[111];
	while(gets(a)){
		int len=strlen(a);
		for(int i=0;i<len;i++){
			if(a[i]>='a'&&a[i]<='z'){
				if(i==0){
					a[i]=a[i]-'a'+'A';
				}else if(a[i-1]==' '||a[i-1]=='\t'||a[i-1]=='\r'||a[i-1]=='\n'){
					a[i]=a[i]-'a'+'A';
				}
			}
		} 
		for(int i=0;i<len;i++){
			cout<<a[i];
		}
		cout<<endl;
	}
	return 0;
}