全国高校计算机能力挑战赛C语言程序设计大赛

1.有一组均由字符A~Z和a~z组成的字符串,其中要求将字符串中各 字符按如下要求进行转换: A-z、B-y、C-x、...... 、X-c、Y-b、Z-a

输入: 第一行输入字符串(长度<=10000)

输出: 输出转换之后的字符串。

样例输入: Algorithm

样例输出: zOTLIRGSN

样例输入: Hello

样例输出: sVOOL

#include<stdio.h>
void main()
{
    char a[26];
    int i=0;
    scanf("%s",a);
    while (a[i]) {
        a[i] = (char) abs(187 - a[i]);
        i++;
    }
    printf("%s", a);
}

2.输入一行由字符a~z和A~Z组成的字符串,字符串长度<=10000, 求其中任意两个字符出现次数的差值的绝对值

输入: 第一行输入字符串 第二行输入两个字符。

输出: 输出这两个字符出现次数的差值的绝对值

输入样例: AbddeDfacd

A d

输出样例: 2 (解释:字符串中字符'A'出现了2次,字符'd'出现了4次,则结果 为|2-4|=2)

#include<stdio.h>
#include<math.h>
#include<string.h>
void main()
{
    int a[200] , i ;
    for (i = 0; i < 100; i++)
        a[i] = 0;
    char c[26],m,n;
    scanf("%s%c%c", c,&m,&n);
    strupr(c);
    if (m >= 'a' && m <= 'z')
        m = m - 32;
    if (n >= 'a' && n <= 'z')
        n = n - 32;
    i = 0;
    while (c[i]) {
        if (a[c[i]] == 0)
            a[c[i]] = 1;
        else
            a[c[i]]++;
        i++;
    }
    printf("%d", abs(a[m] - a[n]));
}

3.现要对一个由字符a-z和A-Z组成的字符串进行解密,已知加密规 则是:

字符串中所有字符分别在大写或小写的字母表中被循环左移5位 (fGh-->aBc),

输入: 一个加密过的字符串(( 长度大于1 且小于50 且只包含大小写 字母)。 )

输出: 输出解密后的字符串

样例输入: AbcExyZ

样例输出: FghJcdE

#include<stdio.h>
#include<ctype.h>
void main() {
    char a[50],x;
    int i=0;
    scanf("%s", a);
    while (a[i]) {
        x = a[i];
        if (toupper(x) >= 'V')
        {
                a[i] = a[i] - 21;
        }
        else
            a[i] = a[i] + 5;
        i++;
    }
    puts(a);
}

4.输入正整数A、B、C(0<=A,B,C<=10000),若用'+'、'-'、'*'、 '/'、'%'之一组成等式(即A@B=C,@是上述运算符之一,),则输 出“YES”,否则输出“NO”;

输入: 第一行输入正整数N(1<=N<=1000)表示有N组数据, 其后有N行非零整数A、B、C。

输出: 对于每行整数A、B、C,其计算结果各占一行。

输入样例: 5 2 3 6 3 5 1 5 3 1 1 4 1 6 2 7

输出样例: YES NO NO YES NO

              (说明:输入样例中2*3=6,1%4=1)

#include<stdio.h>
void main() {
    int n, a[10], b[10], c[10],i;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        scanf("%d%d%d", &a[i], &b[i], &c[i]);
    for (i = 0; i < n; i++)
        if (a[i] + b[i] == c[i] || a[i] - b[i] == c[i] || a[i] * b[i] == c[i] || (float)a[i] / (float)b[i] == (float)c[i] || a[i] % b[i] == c[i])
            printf("YES\n");
        else
            printf("NO\n");
}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐