zoukankan      html  css  js  c++  java
  • 字符串和日期

    字符串中A的数量

    输入一个字符串,统计其中字符 A 的数量并且输出。

    输入格式

    输入共有一行,为一个不带空格的字符串(其中字符数不超过 100)。

    输出格式

    输出一行,包含一个整数,?为输入字符串中的 A 的数量。

    样例输入1

    AabdkeaoektA

    样例输出1

    2

    样例输入2

    sdaopjsapojr

    样例输出2

    0

    #include<stdio.h>
    #include<cstring>
    char a[105];
    int main()
    {
        int len,cnt=0;
        scanf("%s",a);
        len=strlen(a);
        for (int i = 0; i < len; i++)
        {
            if (a[i]=='A')
            {
                cnt++;
            }
        }
        printf("%d",cnt);
        return 0;
    }
    

    最长的名字

    小蒜的课外班上有 N 个同学,每个同学的名字长度都不一样。小蒜想知道班上谁的名字最长,你能不能帮他找出来呢?

    输入格式

    输入第一行为小蒜的同学数 N(0≤N≤100)。 接下来 N 行每行是一个同学的名字(中间没有空格)。

    输出格式

    输出一行,为名字最长的同学的名字。

    样例输入1

    3

    Tom

    Gaofei

    Lobs

    样例输出1

    Gaofei

    样例输入2

    1 Jsknme

    样例输出2

    Jsknme

    #include <stdio.h>
    #include <cstring>
    char a[105], ans[105];
    int main()
    {
        int n, len;
        int anslen = 0;
        scanf("%d", &n);
        for (int i = 0; i < n; i++)
        {
            scanf("%s", a);
            len = strlen(a);
            if (len > anslen)
            {
                anslen = len;
                strcpy(ans, a);
            }
        }
        printf("%s", ans);
        return 0;
    }
    

    字符串

    从键盘输入一个长度大于 10 的字符串,现要求:将字符串中的所有大小写字母都改写成该字母的下一个字母。如:最后一个小写字母 z 改写成字母 a;最后一个大写字母 Z 改写成 A,其他字符依照原有顺序不变。

    输入格式

    输入只有一行,包含 1 个任意的不带有空格的字符串(其长度在 10 到 1000 之间)。

    输出格式

    输出只有一行,即为满足条件的字符串。

    样例输入

    ABCDZ123abcdefz

    样例输出

    BCDEA123bcdefga

    #include <stdio.h>
    #include <cstring>
    char s[1005];
    int main()
    {
        int len;
        scanf("%s", s);
        len = strlen(s);
        for (int i = 0; i < len; i++)
        {
            if (s[i] == 'z')
            {
                s[i] = 'a';
            }
            else if (s[i] == 'Z')
            {
                s[i] = 'A';
            }
            else if ((s[i] >= 'a' && s[i] <= 'z') || (s[i] >= 'A' && s[i] <= 'Z'))
            {
                s[i]++;
            }
        }
        printf("%s", s);
        return 0;
    }
    

    大数的奇偶性判断

    从键盘输入一个位数可能最多达到 10000 的整数,判断它是否是一个偶数,如果是偶数则输出 YES 否则输出 NO。

    注意:long long也存不下这么大的数字。

    输入格式

    输入只有一行,包含 1个正整数(其长度在 1 到 10000)。

    输出格式

    输出只有一行,如果是偶数则输出 YES 否则输出 NO。

    样例输入

    1231393713904

    样例输出

    YES

    #include <stdio.h>
    #include <cstring>
    char a[10005];
    int main()
    {
        scanf("%s", a);
        int len = strlen(a);
        if ((a[len - 1] - '0') % 2 == 0)
        {
            printf("YES
    ");
        }
        else
        {
            printf("NO
    ");
        }
    
        return 0;
    }
    

    字符反转

    输入一个字符串,然后把这个字符串反转输出。

    输入格式

    输入一行一个字符串,不包含空格。

    输出格式

    输出这个字符串的反转。

    样例输入

    1234567890

    样例输出

    0987654321

    #include <stdio.h>
    #include <cstring>
    char a[10005];
    int main()
    {
        scanf("%s", a);
        int len = strlen(a);
        for (int i = len - 1; i >= 0; i--)
        {
            printf("%c", a[i]);
        }
    
        return 0;
    }
    

    最后一个单词

    给定由大写,小写字母和空格组成的字符串,返回最后一个单词的长度。 如果输入中不存在单词,返回 0。

    注意:

    “单词”是指不包含空格符号的字符串

    例如: 对于字符串"hello World"(不带引号), 那么返回的结果是 5;

    对于字符串"abc abc "(不带引号),那么返回的结果就是 3。

    输入格式

    输入仅一行,为字符串 s(长度不超过 10000)。

    输出格式

    输出 s 中最后一个单词的长度。

    样例输入1

    Today is a nice day

    样例输出1

    3

    样例输入2

    The quick brown fox jumps over the lazy dog 样例输出2

    3

    #include <stdio.h>
    #include <cstring>
    char a[10005];
    int main()
    {
        while ((scanf("%s",a))!=EOF);
        int len=strlen(a);
        printf("%d
    ",len);
        return 0;
    }
    

    蓝桥杯真题:十字图

    本题是蓝桥杯往届真题。

    https://blog.csdn.net/pack__pack/article/details/57089360

    #include<stdio.h>
    char s[150][150];
    int main()
    {
        int n;
        int x=0,y=0;
        scanf("%d",&n);
        for (int i = 0; i < 4*n+5; i++)
        {
            for (int j = 0; j < 4*n+5; j++)
            {
                s[i][j]='.';
            }
            
        }
        for (int i = 0; i < n+1; i++)
        {
            for (int j = y+2; j<=y+4*(n-i)+2; j++) //1
            {
                s[x][j]='$';
            }
            for(int j=x;j<=x+2;j++)  //2
            {
                s[j][y+2]='$';
            }
            for (int j = x; j<= x+2; j++)  //3
            {
                s[j][x+4*(n-i)+2]='$';
            }
            for(int j=y;j<=y+2;j++)      //4
            {
                s[x+2][j]='$';
            }
            for(int j=y+4*(n-i)+2;j<=y+4*(n-i)+4;j++)  //5
            {
                s[x+2][j]='$';
            }
            for(int j=x+2;j<=x+4*(n-i)+2;j++)  //6
            {
                s[j][y]='$';
            }
            for(int j=x+2;j<=x+4*(n-i)+2;j++) //7
            {
                s[j][y+4*(n-i)+4]='$';
            }
            for (int j = y+2; j<=y+4*(n-i)+2; j++) //8
            {
                s[x+4*(n-i)+4][j]='$';
            }
            for(int j=x+4*(n-i)+2;j<=x+4*(n-i)+4;j++)  //9
            {
                s[j][y+2]='$';
            }
            for(int j=x+4*(n-i)+2;j<=x+4*(n-i)+4;j++)  //10
            {
                s[j][y+4*(n-i)+2]='$';
            }
            for(int j=y;j<=y+2;j++)      //11
            {
                s[x+4*(n-i)+2][j]='$';
            }
            for(int j=y+4*(n-i)+2;j<=y+4*(n-i)+4;j++)  //12
            {
                s[x+4*(n-i)+2][j]='$';
            }
            x+=2;
            y+=2;
        }
        for (int i = 0; i < 4*n+5; i++)
        {
            printf("%s
    ",s[i]);
        }
        
        return 0;
    }
    

    节假日

    日历有 阳历(公历) 和 阴历(农历) 之分。每年都有法定节假日,这些分成三类——双休、阳历节假日、阴历节假日。

    1.双休

    周六和周日 2 天

    2.阳历节假日

    1)元旦:阳历每年 1 月 1 日,放假 1 天

    2)劳动节:阳历每年 5 月 1 日,放假 1 天

    3)国庆节:阳历每年 10 月 1 日,放假 3 天

    4)圣诞节:阳历每年 12 月 25 日,放假 1 天 3.阴历节假日

    1)春节:阴历每年 1 月 1 日,放假 3 天

    2)清明节:阳历每年 4 月 4 - 6 日之间的某天,放假 1 天

    3)端午节:阴历每年 5 月 5 日,放假 1 天

    4)中秋节:阴历每年 8 月 15 日, 放假 1 天

    当节假日和双休重合时,双休 不延后 也 不提前,保证节假日之间不会重合。现在给你某年的所有阴历节假日的 阳历 日期,以及当年的 1 月 1 日是星期几,请你计算出这一年(阳历 1 月 1 日到 12 月 31 日)放了多少天假(包括双休、阳历节假日和阴历节假日)。

    输入格式

    第一行输入年份y(1900<y≤2050)。

    接下来 4 行,每行输入两个整数 m,d, 依次表示春节、清明节、端午节和中秋节的阳历日期。 最后一行一个整数表示当年 1 月 1 号是星期几(一周内的第几天,每周从星期一开始计数,即星期一为第一天)。

    输出格式

    输出一个整数,表示当年放假的天数。

    样例输入

    2017

    1 28

    4 4

    5 30

    10 4

    7

    样例输出

    113

    #include <stdio.h>
    int day[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    int mm[10] = {1, 5, 10, 10, 10, 12};
    int dd[10] = {1, 1, 1, 2, 3, 25};
    int nextday(int &m, int &d)
    {
        if (d == day[m])
        {
            m++;
            d = 1;
        }
        else
        {
            d++;
        }
        return 0;
    }
    int main()
    {
        int y, w, m, d, f, ans; //f春节
        m = 1;
        d = 1;
        ans = 0;
        f = 0;
        scanf("%d", &y);
        if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
        {
            day[2]++;
        }
        for (int i = 6; i < 10; i++)
        {
            scanf("%d %d", &mm[i], &dd[i]);
        }
    
        scanf("%d", &w);
        while (m != 13)
        {
            if (m == mm[6] && d == dd[6])
            {
                ans++;
                f = 2;
            }
            else if (f)
            {
                ans++;
                f--;
            }
            else if (w == 6 || w == 7)
            {
                ans++;
            }
            else
            {
                for (int i = 0; i < 10; i++)
                {
                    if (m == mm[i] && d == dd[i])
                    {
                        ans++;
                    }
                }
            }
            nextday(m, d);
            if (w == 8)
            {
                w = 1;
            }
            w++;
        }
        printf("%d
    ", ans);
        return 0;
    }
  • 相关阅读:
    vue ui 没反应
    vue脚手架安装教程
    DOS命令如何进入指定文件夹
    python-格式化(%,format,f-string)输出+输入
    Python基础-列表、元组、字典、字符串(精简解析)
    python中的lambda函数用法
    初识JAVA
    关于继承、封装、多态、抽象和接口(Java)
    Python中单下划线和双下划线
    Postgresql 创建SEQUENCE,Springboot中使用KeyHolder
  • 原文地址:https://www.cnblogs.com/qing123tian/p/12349253.html
Copyright © 2011-2022 走看看