电子学会青少年软件编程(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++ ----> 三级】

网站链接

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

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

相关推荐
智者知已应修善业1 天前
【51单片机按键调节占空比3位数码管显示】2023-8-24
c++·经验分享·笔记·算法·51单片机
JasmineX-11 天前
数据结构(笔记)——双向链表
c语言·数据结构·笔记·链表
徐某人..1 天前
基于i.MX6ULL平台的智能网关系统开发
arm开发·c++·单片机·qt·物联网·学习·arm
无敌秋1 天前
# C++ 简单工厂模式实战指南
c++·简单工厂模式
爱编码的小八嘎1 天前
C语言完美演绎9-7
c语言
cany10001 天前
C++ -- 模板的声明和定义
开发语言·c++
澈2071 天前
深耕进阶 Day1:C 与 C++ 核心差异 + C++ 入门基石
c语言·开发语言·c++
love530love1 天前
Windows Podman Machine 虚拟硬盘迁移完整指南:从 C 盘到非系统盘
c语言·人工智能·windows·podman
Felven1 天前
C. Need More Arrays
c语言·开发语言