2021 年 9 月青少年软编等考 C 语言一级真题解析

news/2025/2/11 8:22:04/

目录

  • T1. 交换输出
    • 思路分析
  • T2. 计算乘积
    • 思路分析
  • T3. 数字判断
    • 思路分析
  • T4. 满足条件的数的累加
    • 思路分析
  • T5. 比 n 小的最大质数
    • 思路分析

T1. 交换输出

输入两个整数 a a a b b b,将它们交换输出。

时间限制:1 s
内存限制:64 MB

  • 输入
    一行两个整数 a a a b b b,以空格分隔。 0 < a < 1 0 8 0 < a < 10^8 0<a<108 0 < b < 1 0 16 0 < b < 10^{16} 0<b<1016
  • 输出
    一行两个整数 b b b a a a,以空格分隔。
  • 样例输入
    123 12345654321
    
  • 样例输出
    12345654321 123
    

思路分析

此题考查基本的输入输出,属于入门题。按照题目要求进行输入输出即可。

注意第二个整数可能很大,需要用 long long 类型进行存储。

/** Name: T1.cpp* Problem: 交换输出* Author: Teacher Gao.* Date&Time: 2024/03/04 22:01*/#include <iostream>using namespace std;int main()
{int a;long long b;cin >> a >> b;cout << b << " " << a << endl;return 0;
}

T2. 计算乘积

给定两个数 a a a b b b,计算它们的乘积。

时间限制:1 s
内存限制:64 MB

  • 输入
    一行两个整数 a a a b b b,以空格分隔。 0 < a , b < 1 0 8 0 < a, b < 10^8 0<a,b<108
  • 输出
    输出一个整数,表示 a a a b b b 的乘积。
  • 样例输入
    123456 123456
    
  • 样例输出
    15241383936
    

思路分析

此题考查算术运算,属于入门题。

注意整数 a a a b b b 的范围虽然在 int 类型之内,但是乘积的结果可能超出 int 范围,为了避免计算结果出错,可以将变量 ab 直接声明为 long long 类型。

/** Name: T2.cpp* Problem: 计算乘积* Author: Teacher Gao.* Date&Time: 2024/03/04 22:02*/#include <iostream>using namespace std;int main()
{long long a, b;cin >> a >> b;cout << a * b << endl;return 0;
}

T3. 数字判断

输入一个字符,如果输入的字符是数字,输出 yes,否则输出 no

时间限制:1 s
内存限制:64 MB

  • 输入
    一个字符。
  • 输出
    如果输入的字符是数字,输出 yes,否则输出 no
  • 样例输入 1 1 1
    5
    
  • 样例输出 1 1 1
    yes
    
  • 样例输入 2 2 2
    A
    
  • 样例输出 2 2 2
    no
    

思路分析

此题考查分支结构,属于入门题。思路与同年 6 6 6 月份考试的 T3 一致,可以参考2021 年 6 月青少年软编等考 C 语言一级真题解析中的 T3。

/** Name: T3.cpp* Problem: 数字判断* Author: Teacher Gao.* Date&Time: 2024/03/04 22:03*/#include <iostream>using namespace std;int main()
{char ch;cin >> ch;if ('0' <= ch && ch <= '9') {cout << "yes" << endl;}else {cout << "no" << endl;}return 0;
}

T4. 满足条件的数的累加

现有 n n n 个整数,将其中个位数为 k k k 的数进行累加求和。

时间限制:1 s
内存限制:64 MB

  • 输入
    第一行两个整数 n n n k k k,以空格分隔。 0 < n < 1000 0 < n < 1000 0<n<1000 0 ≤ k ≤ 9 0 \le k \le 9 0k9
    第二行 n n n 个非负整数,以空格分隔,每个数不大于 100000 100000 100000
  • 输出
    输出满足题目要求的累加和。
  • 样例输入
    10 7
    2 5 7 17 11 18 4 27 1 7
    
  • 样例输出
    58
    

思路分析

此题考查循环结构与分支结构,属于入门题。

此题需要依次判断输入的每个数 x。若 x 的个位与 k k k 相等,则将 x 累加。x 的个位可以用 x % 10 获取。

/** Name: T4.cpp* Problem: 满足条件的数的累加* Author: Teacher Gao.* Date&Time: 2024/03/04 22:04*/#include <iostream>using namespace std;int main()
{int n, k, x;cin >> n >> k;int sum = 0;for (int i = 1; i <= n; i++) {cin >> x;if (x % 10 == k) {sum += x;}}cout << sum << endl;return 0;
}

T5. 比 n 小的最大质数

对于给定的 n n n,求比 n n n 小的质数中最大的一个。

质数是指一个大于 1 1 1 的自然数,除了 1 1 1 和它自身外,不能被其他自然数整除的数。

时间限制:1 s
内存限制:64 MB

  • 输入
    一个整数 n n n 2 < n < 10000 2 < n < 10000 2<n<10000
  • 输出
    一个整数,即题目要求的解。
  • 样例输入
    100
    
  • 样例输出
    97
    

思路分析

此题考查质数判断,需要用到循环结构,属于一般应用题。

此题可以用循环遍历从 n n n 2 2 2 的所有整数,依次判断每个整数 i 是否为质数,若为质数,则输出 i 即可结束程序。之所以从 n n n 开始遍历,是因为这样找出来的第一个质数就是题目需要的比 n n n 小的最大质数;之所以到 2 2 2 结束,是因为最小的质数就是 2 2 2

判断质数时,可以依次枚举从 2 2 2 n \sqrt{n} n 的所有整数 j,检测是否存在某个整数 ji 的因子。若存在,则说明 i 不是质数;若不存在,则说明 i 是质数。这里可以使用标记法进行标记,具体使用方法见参考代码。

/** Name: T5.cpp* Problem: 比 n 小的最大质数* Author: Teacher Gao.* Date&Time: 2024/03/04 22:06*/#include <iostream>using namespace std;int main()
{int n;cin >> n;for (int i = n; i >= 2; i--) {// 标记法判断 i 是否为质数bool flag = 1;for (int j = 2; j * j <= i; j++) {if (i % j == 0) {flag = 0;break;}}if (flag) {cout << i << endl;break;}}return 0;
}

http://www.ppmy.cn/news/1371736.html

相关文章

11. Nginx进阶-HTTPS

简介 基本概述 SSL SSL是安全套接层。 主要用于认证用户和服务器&#xff0c;确保数据发送到正确的客户机和服务器上。 SSL可以加密数据&#xff0c;防止数据中途被窃取。 SSL也可以维护数据的完整性&#xff0c;确保数据在传输过程中不被改变。 HTTPS HTTPS就是基于SSL来…

Linux中汇编语言的学习(加法、乘法、除法、左移、右移、按位与等多种命令操作实例)

汇编概述 汇编需要学习的大致框架如下&#xff1a; 汇编中的符号 1.指令&#xff1b;能够北嘁肷梢惶?2bit机器码&#xff0c;并且能够被cpui识别和执行 2.伪指令&#xff1a;本身不是指令&#xff0c;编译器可以将其替换成若干条指令 3.伪操作&#xff1a;不会生成指令…

DAY 11有效括号 删除字符串中的相邻重复项 逆波兰表达式

3.有效的括号 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的…

day07_分类管理EasyExcel品牌管理

文章目录 1 分类管理1.1 菜单添加1.2 表结构介绍1.3 页面制作1.4 列表查询1.4.1 需求分析1.4.2 后端接口CategoryCategoryControllerCategoryServiceCategoryMapperCategoryMapper.xml 1.4.3 前端对接category.jscategory.vue 2 EasyExcel2.1 数据导入导出意义2.2 EasyExcel简介…

[c/c++] 结构体对齐

在 c 语言中&#xff0c;结构体的大小并不是结构体每个成员的大小之和&#xff0c;结构体的大小往往比结构体的成员大小之和要大。如下结构体&#xff0c;每个成员的大小分别是 1、4、1&#xff0c;但是结构体的大小却不是 6&#xff0c;而是 8。 struct Test { char a; int b;…

深度学习预测分析API:金融领域的Game Changer

&#x1f680; 引言 在这个AI遍地开花的时代&#xff0c;谁能成为金融领域的真正Game Changer&#xff1f;那必然是是深度学习预测分析API。如大脑般高效运转的系统不仅颠覆了传统操作&#xff0c;更是以无与伦比的速度和精度赋予了金融数据以全新的生命。 &#x1f4bc; 广泛…

win中删除不掉的文件,火绒粉碎删除亲测有效

看网上的 win R 然后终端输入什么删除的&#xff0c;照做了都没有删掉 有火绒的可以试试&#xff1a; 拖进去就删掉了 很好使

Python——与Matlab对应的Python版本

参考资料&#xff1a; Python——与Matlab对应的Python版本