A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

我的代码如下, 求赐教:
#include <stdio.h>
#define  N 32                                  //宏定义N为32
int main(int argc, const char * argv[]) {
    printf("请输入一英文句子:\n");               //提示用户输入
    char str[100];                             //创建一个数组用来存放将要输入的句子
    char *p = str;                             //定一个一个字符指针,用来改变数组中的某些值
    gets(str);
//---------如果第一个输入的不是空格并且是小写字母就转换成大写---------------
    if ((*p != ' ')&&(*p >= 'a' && *p <='z')) {
        *p -=N;
    }
    p++;                                       //指针指向下一个字符
//---------判定单词首字母后面是否是空格后者换行符,如果是小写字母指针继续指向下一个字符;如果是空格,先对空格后的字符进行判定,如果是小写字母,就进行转换,如果不是就跳转到while语句继续判定---------
    while (*p != '\0') {
        if (*p != ' ') {
            p++;
        } else if(*p == ' '){
            p++;
            if (*p >= 'a' && *p <='z') {
                *p -=N;
            }
        }
    }
    puts(str);
    return 0;
}

点评

好深奥  发表于 2015-9-11 12:09

1 个回复

正序浏览
您需要登录后才可以回帖 登录 | 加入黑马