黑马程序员技术交流社区

标题: 大小写转换 [打印本页]

作者: ljk-tt    时间: 2015-8-18 21:26
标题: 大小写转换
一天搞定一个
#include<stdio.h>
void func(char x[])
{
    int i;
    for(i=0;i<10;i++)
    {
        if(96<(*x)&&(*x)<123)
            printf("%c\n",*x-32);
        else if(64<(*x)&&(*x)<91)
            printf("%c\n",*x);
        else if(*x=='\n')
            break;
        x++;
    }
    return;
}
int main(void)
{
    char c[10];
    int i;
    for(i=0;i<10;i++)
    {
        scanf("%c",&c[i]);
        if(c[i]=='\n')
            break;
    }
    func(c);
    return 0;
}

作者: 第一梦    时间: 2015-8-18 22:04
方法可以的,但是一般开发中不要出现“数字”,加减和做比较的时候直接用字符,例如 if(ch>='a' && ch <='z'){ch =ch-'a'+'A';}
作者: Northcity    时间: 2015-8-18 22:32
赞同楼上
作者: ljk-tt    时间: 2015-8-19 21:22
第一梦 发表于 2015-8-18 22:04
方法可以的,但是一般开发中不要出现“数字”,加减和做比较的时候直接用字符,例如 if(ch>='a' && ch  ...

谢谢意见

作者: ljk-tt    时间: 2015-8-19 21:24
Northcity 发表于 2015-8-18 22:32
赞同楼上

嗯嗯,以后会注意
作者: ylxkab    时间: 2015-8-19 22:20
第一梦 发表于 2015-8-18 22:04
方法可以的,但是一般开发中不要出现“数字”,加减和做比较的时候直接用字符,例如 if(ch>='a' && ch  ...

学习了,这个方法真好
作者: 第一梦    时间: 2015-8-19 22:31
恩,数字在代码中经常被叫做“魔法数值”一般是不允许的。加油哦。
作者: ljk-tt    时间: 2015-8-20 07:27
第一梦 发表于 2015-8-19 22:31
恩,数字在代码中经常被叫做“魔法数值”一般是不允许的。加油哦。

好的,受教,谢谢。
作者: 庞佳星    时间: 2015-8-20 10:52

//6、 输入一英文句子,将其中所有单词首字符转换成大写后输出。(C语言)


//输入的时候可以包括数字和多个空格
#include<stdio.h>
#include<string.h>
void main()
{
        int i = 0,word =0,count = 0;
        char sentence[100];
        //输入一句话并保存在一维数组中
        printf("请输入一句话:\n");
        fgets(sentence,sizeof(sentence),stdin);
        //遍历字符串
        for(i=0;sentence[i]!='\n';i++)
        {
                //遇到空格给word赋值为0,然后对下一个字符进行大写(大写的时候
                //再对字母进行判断是否是a到z中的字母,如果是对其大写,若果不是不作处理原样输出)
                if(sentence[i]==' ')
                {
                        word=0;
                }else if((word==0)&&(sentence[i]>='a')&&(sentence[i]<='z'))
                {
                        word=1;
                        count++;
                        sentence[i]=sentence[i]-32;
                }

        }
        //打印输出字符串
        printf("输入字符串中的单词个数为%d\n",count);
        puts(sentence);
}




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