电子学会青少年软件编程(C语言)等级考试试卷(三级)2025年12月

=========================================================================

更多内容和历年真题请查看网站:【试卷中心 -----> 电子学会 ----> C/C++ ----> 三级】

网站链接

青少年软件编程历年真题模拟题实时更新

=========================================================================

青少年软件编程(C语言)等级考试试卷(三级)

一、编程题(共5题,共100分)

1、密文匹配

题目描述

你有两段密文 s和 t,长度分别为 n 和 m,且 n≤m。

请判断 s在 t 中的位置关系,并输出对应编号:

若 s同时出现在 t 的开头和结尾,输出 0

若 s仅出现在开头,输出 1

若 s仅出现在结尾,输出 2

若 s既不在开头也不在结尾,输出 3

其中,"出现在开头"指 t 的前 n 个字符与 s完全相同;"出现在结尾"指 t 的后 n 个字符与 s完全相同。

输入格式

第一行:两个整数表示n m

第二行:字符串s

第三行:字符串t

输出格式

输出一个数字表示结果

输入样例#1

3 6

abc

abcdef

输出样例#1

1

输入样例#2

3 4

abc

cabc

输出样例#2

2

输入样例#3

3 3

ccc

ccc

输出样例#3

0

输入样例#4

3 3

abc

xyz

输出样例#4

3

说明提示

1≤n≤m≤1001≤n≤m≤100

字符串均为小写字母

限制

时间限制:1000ms

内存限制:256MiB

参考代码:

复制代码
#include <iostream>
#include <string>
using namespace std;

int main() {
    int n, m;
    string s, t;
    cin >> n >> m >> s >> t;

    int is_prefix = true;
    for (int i = 0; i < n; i++) {
        if (s[i] != t[i]) {
            is_prefix = false;
        }
    }
    
    int is_suffix = true;
    for (int i = 0; i < n; i++) {
        if (s[i] != t[m - n + i]) {
            is_suffix = false;
        }
    }

    if (is_prefix) {
        cout << (is_suffix ? 0 : 1) << endl;
    } else {
        cout << (is_suffix ? 2 : 3) << endl;
    }

    return 0;
}

2、比较

题目描述

给定两个正整数 a,b,比较他们的大小。注意给定的整数可能非常大。

输入格式

第一行,整数a

第二行,整数b。

输出格式

如果 a>b,输出 ">";如果 a=b,输出 "=",如果 a<b,输出 "<"。

输入样例#1

123

456

输出样例#1

<

输入样例#2

111111111111111111

99999999999999999

输出样例#2

>

输入样例#3

123456789123456789012345678901234567890

123456789123456789012345678901234567890

输出样例#3

=

说明提示

1≤a,b≤101001≤a,b≤10100,保证 a,b 均无前导零。

限制

时间限制:1000ms

内存限制:256MiB

=========================================================================

更多内容和历年真题请查看网站:【试卷中心 -----> 电子学会 ----> C/C++ ----> 三级】

网站链接

青少年软件编程历年真题模拟题实时更新

=========================================================================

相关推荐
Sakura_j_h_33 分钟前
EasyEDA PCB 快速设计Skills
c++·python·github
程序喵大人1 小时前
【C++入门】内存模型与资源管理 - 09 shared_ptr 和 weak_ptr 解决共享,也带来代价
开发语言·c++·资源管理·智能指针·内存模型
jimy13 小时前
C++ 中的 `T&&`:右值引用与转发引用
开发语言·c++
Zwawa5 小时前
串口为什么会丢字节:从轮询到中断和环形缓冲区
c语言·单片机·嵌入式
会编程的小孩5 小时前
C++ 定时器
c++
沫璃染墨7 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
揽星河..8 小时前
【C语言】分支和循环
c语言·c++·算法
Fuyo_11199 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
揽星河..10 小时前
【C语言】猜数字游戏
c语言·算法·游戏
傲世仙尊10 小时前
继承-类设计层次复用切片转换与菱形继承的死结
c++