小白求助 如何将一句话每个单词的第一个字母变成大写
#include <stdio.h>// You can add your own functions if necessary
void capitalize_first_character(char str) {
// 补充程序
}
int main(void) {
char str;
gets(str);
capitalize_first_character(str);
return 0;
}
如何将一句话每个单词的第一个字母变成大写?
ex:i love you,my darling->I Love You,My Darling. a~z:
ch - 'a' + 'A';
A~Z
ch - 'A' +'a' 我写伪代码
if(str<='z'&&str>='a')str-=32;//首个字母分类讨论
int j=1;
while(str!='\n')
{
//对每个字母,如果前一个字符是空格,那就把它变大写
if(str==' '&&str<='z'&&str>='a')str-=32;
}
召唤风云 发表于 2020-10-6 23:02
我写伪代码
if(str='a')str-=32;//首个字母分类讨论
int j=1;
上面有点问题
if(str<='z'&&str>='a')str-=32;//首个字母分类讨论
int j=1;
while(str!='\n')
{
//对每个字母,如果前一个字符不是字母,那就把它变大写
if(str<='z'&&str>='a');
else if(str<='Z'&&str>='A');
//前一个字符不是字母,这个字符是字母
else if(str<='z'&&str>='a')str-=32;
}
页:
[1]