还是OJ,运行挺好,但就是不给通过,ACM大神指导下咋改改

【求助】还是OJ,运行挺好,但就是不给通过,ACM大神指导下咋改改啊
/*题目描述
      输入一个不超过101个英文字符的一句话,你的任务是把这句话中所有单词的首字母变为大写。
输入
输入包含多组测试数据,每组数据只有一行为一个字符串,字符串的长度不超过101。
输出
对于每组测试数据,输出转换后的英文句子。
示例输入
i need you i love you and i miss you示例输出
I Need You I Love You And I Miss You提示
*/
#include <iostream>
#include <string>
using namespace std;
int main()
{
	int i,j;
	char str[200];
	gets(str);
	j=strlen(str);
	str[0]=str[0]-32;
	for(i=1;i<j-1;i++)
	{
		if(str[i]==' ')
		{
			str[i+1]-=32;
		}
	}
		cout<<str<<endl;
	return 0;
} 
/**************************************
	Problem id	: SDUT OJ 2550 
	User name	: 鲁家志 
	Result		: Compile Error 
	Take Memory	: 0K 
	Take Time	: 0MS 
	Submit Time	: 2013-04-08 19:08:57  
**************************************/