黑马程序员技术交流社区

标题: 课堂上的一道题练习输入一英文句子,将其中所有单词首字符转换成大写后输出 [打印本页]

作者: yufanyufan77    时间: 2015-10-10 15:36
标题: 课堂上的一道题练习输入一英文句子,将其中所有单词首字符转换成大写后输出
//输入一英文句子,将其中所有单词首字符转换成大写后输出
#include"stdio.h"
#include"string.h"
int main(void)
{
        //定义一个变量用来存储键盘输入的字符
        char str[1000];
        int temp;
        printf("请输入你的英文句子:");
        gets(str);
        str[0] = str[0] - 32;//特殊处理第一个字符串
        for(temp=1; temp<strlen(str); temp++)
        {
                        //满足当前字符是空格、不是\0
                        //temp<strlen(str) 避免while的循环使str溢出
                        //循环因子加一
                        while((str[temp] == ' ')&(str[temp] != '\0')&(temp<strlen(str)))
                        {
                                temp++;
                        }
                        //满足当前字符不是空格、不是\0 。 满足当前字符前一个字符是空格。
                        if((str[temp] != ' ')&(str[temp-1] == ' ')&(str[temp] != '\0'))
                        str[temp] = str[temp] - 32;
        }
        //输出字符串
        puts(str);
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2