2020年全国高校计算机能力挑战赛C语言程序设计大赛
2020年全国高校计算机能力挑战赛C语言程序设计大赛
全国高校计算机能力挑战赛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");
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)