首页 > 解决方案 > 这个只在空格前打印单词的c代码有什么问题

问题描述

我已经写了这段代码,但它只打印空格前的单词

void LetterCapitalize(char str[]) 
{ 

    int i;
    char res[50];
    res[0] = str[0] - 32;
    for(i=1;i<=strlen(str);i++)
    {
        if(str[i] == 32)
        {
            res[i++] = str[i++] - 32;
        }
        else
            res[i] = str[i];
    }
    printf("%s",res);
}

int main(void) { 

  // keep this function call here
  LetterCapitalize(gets(stdin));
  return 0;

}

标签: c

解决方案


推荐阅读