• 大小写互换-"数字字符串"转换成数字


    今天穿着hacker浑浊马甲在百度编程课堂实训习题中发现了这个很简单的问题,就做了下。

    为了考虑输入的是否是数字,结果写好后竟然超时了。

    不过里面用到的将字符串装换成数字的方法,感觉是个收获,因此在此做下笔记。

    大小写互换
    时间限制:1000 ms | 内存限制:65535 KB
    难度:0
    描述
    现在给出了一个只包含大小写字母的字符串,不含空格和换行,要求把其中的大写换成小写,小写换成大写,然后输出互换后的字符串。
    输入
    第一行只有一个整数m(m<=10),表示测试数据组数。
    接下来的m行,每行有一个字符串(长度不超过100)。
    输出
    输出互换后的字符串,每组输出占一行。
    样例输入
    2
    Acm
    ACCEPTED
    样例输出
    aCM
    accepted

    超时解题报告:

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    int main()
    {
        char *n,m,s[27];
        int a,i,len;
        scanf("%s",&m);    
        n=&m;
        a=atoi(n);
        if(a)//输入的是数字
        {
            while(a--)
            {
                scanf("%s",s);
                len=strlen(s);
                for(i=0;i<len;i++)
                {
                    if(s[i]>=65&&s[i]<=90)//大写时候
                    {
                        printf("%c",s[i]+32);
                    }
                    else 
                        if(s[i]>=97&&s[i]<=122)//小写时候
                            printf("%c",s[i]-32);
                        else
                            printf("
    error!
    ");            
                }
                printf("
    ");
            }
        }
        else //输入的不是数字
        {
            printf("data error!
     ");
        }
        return 0;
    }

    程序截图:

    如果我按照一般思路来这样写,虽然结果不超时但是感觉不够严谨诶。

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        int m,i,len;
        char s[101];
        scanf("%d",&m);    
        while(m--)
        {
            scanf("%s",s);
            len=strlen(s);
            for(i=0;i<len;i++)
            {
                if(s[i]>=65&&s[i]<=90)//大写时候
                {
                    printf("%c",s[i]+32);
                }
                else 
                    if(s[i]>=97&&s[i]<=122)//小写时候
                        printf("%c",s[i]-32);
                    else
                        printf("
    error!
    ");            
            }
            printf("
    ");
        }    
        return 0;
    }

    程序截图:

  • 相关阅读:
    jmeter在Windows下安装(含插件安装)
    Jenkins中agent的使用
    Jenkins自动化测试脚本的构建
    Python在Linux下编译安装
    Jenkins项目构建运行
    VIM不正常退出产生的swp文件
    SSI服务器端包含注入
    【强网杯2019】随便注
    判断网站CMS
    windows基础
  • 原文地址:https://www.cnblogs.com/xingyunblog/p/3946252.html
Copyright © 2020-2023  润新知