news 2026/4/18 11:56:33

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2020 年 6 月青少年软编等考 C 语言一级真题解析

目录

  • T1. 鸡尾酒疗法
    • 思路分析
  • T2. 判断是否存在重复的数
    • 思路分析
  • T3. 日期输出
    • 思路分析
  • T4. 计算表达式的值
    • 思路分析
  • T5. 与指定数字相同的数的个数
    • 思路分析

T1. 鸡尾酒疗法

题目链接:SOJ D1426

鸡尾酒疗法,原指高效抗逆转录病毒治疗(HAART),由美籍华裔科学家何大一于1996 19961996年提出,是通过三种或三种以上的抗病毒药物联合使用来治疗艾滋病。该疗法的应用可以减少单一用药产生的抗药性,最大限度地抑制病毒的复制,使被破坏的机体免疫功能部分甚至全部恢复,从而延缓病程进展,延长患者生命,提高生活质量。

人们在鸡尾酒疗法的基础上又提出了很多种改进的疗法。为了验证这些治疗方法是否在疗效上比鸡尾酒疗法更好,可用通过临床对照实验的方式进行。

假设鸡尾酒疗法的有效率为x xx,新疗法的有效率为y yy,如果y − x y-xyx大于5 % 5\%5%,则效果更好,如果x − y x-yxy大于5 % 5\%5%,则效果更差,否则称为效果差不多。

下面给出n nn组临床对照实验,其中第一组采用鸡尾酒疗法,其他n − 1 n-1n1组为各种不同的改进疗法。请写程序判定各种改进疗法效果如何。

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

  • 输入
    第一行为整数n nn1 < n ≤ 20 1<n \le 201<n20);
    其余n nn行每行两个整数,第一个整数是临床实验的总病例数(小于等于10000 ) 10000)10000),第二个疗效有效的病例数。
    n nn行数据中,第一行为鸡尾酒疗法的数据,其余各行为各种改进疗法的数据。
  • 输出
    n − 1 n-1n1行输出,分别表示对应改进疗法的效果:如果效果更好,输出better;如果效果更差,输出worse;否则输出same
  • 样例输入
    5 125 99 112 89 145 99 99 97 123 98
  • 样例输出
    same worse better same

思路分析

此题考察循环结构,属于入门题。

首先输入三个整数n , a , b n,a,bn,a,b,其中a , b a,ba,b就是第一行鸡尾酒疗法的数据,并据此计算出鸡尾酒疗法的有效率x = b / a x = b / ax=b/a。注意由于a , b a,ba,b都是整数,在 C++ 中直接计算b / a会进行整除运算,应当写成表达式1.0 * b / a,利用自动类型转换来达到浮点数除法的目的。

然后依次输入n − 1 n-1n1个改进疗法的数据,并计算出有效率y yy。之后根据题意判断改进疗法的疗效更优、更劣或相同即可。

/* * Name: T1.cpp * Problem: 鸡尾酒疗法 * Author: Teacher Gao. * Date&Time: 2026/01/10 01:10 */#include<cstdio>intmain(){intn,a,b;scanf("%d %d %d",&n,&a,&b);doublex=1.0*b/a;for(inti=1;i<n;i++){scanf("%d %d",&a,&b);doubley=1.0*b/a;if(y-x>=0.05){printf("better\n");}elseif(x-y>=0.05){printf("worse\n");}else{printf("same\n");}}return0;}

T2. 判断是否存在重复的数

题目链接:SOJ D1221

给定3 33个数,判断是否存在2 22个数相等,如果存在输出YES,否则输出NO

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

  • 输入
    1 11行,包含3 33个整数,以空格分隔。
  • 输出
    按照题目要求输出结果。
  • 样例输入
    2 7 2
  • 样例输出
    YES

思路分析

此题考察分支结构与逻辑运算,属于入门题。

此题只需要按照题意判断是否存在2 22个数相等即可。需要注意的是,输入的有3 33个数,所以会有3 33种不同的情况,任意一种成立即可。

/* * Name: T2.cpp * Problem: 判断是否存在重复的数 * Author: Teacher Gao. * Date&Time: 2024/03/04 23:14 */#include<iostream>usingnamespacestd;intmain(){inta,b,c;cin>>a>>b>>c;if(a==b||a==c||b==c){cout<<"YES"<<endl;}else{cout<<"NO"<<endl;}return0;}

T3. 日期输出

题目链接:SOJ D1260

给定两个整数,表示一个日期的月和日。请按照"MM-DD"的格式输出日期,即如果月和日不到2 22位时,填补0 00使得满足2 22位。

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

  • 输入
    2 22个整数m , d m,dm,d0 < m ≤ 12 , 0 < d ≤ 31 0 < m \le 12, 0 < d \le 310<m12,0<d31)。数据保证日期合法。
  • 输出
    按照题目要求输出日期
  • 样例输入
    7 18
  • 样例输出
    07-18

思路分析

此题考察格式化输入输出,属于入门题。

使用格式化输出printf("%02d", ...);可以做到题目要求的效果。简单解释一下

  • %d表示以十进制形式输出,这是我们常用的格式。
  • %2d表示以十进制形式输出,场宽为2 22(输出数字所占用的最小长度为2 22),不足2 22位的数则右对齐输出,左侧自动补充空格,超出2 22位的数按实际数字输出。
  • %02d表示以十进制形式输出,场宽为2 22,不足2 22位的数则右对齐输出,左侧自动补0,超出2 22位的数按实际数字输出。

此外,使用cout << setfill('0') << setw(2) << ...;也可以达到题目要求的效果。其中setfill('0')表示设置填充字符为'0'setw(2)表示设置场宽为2 22,默认右对齐输出。

/* * Name: T3.cpp * Problem: 日期输出 * Author: Teacher Gao. * Date&Time: 2024/02/28 22:50 */#include<cstdio>usingnamespacestd;intmain(){inta,b;scanf("%d%d",&a,&b);printf("%02d-%02d",a,b);return0;}

T4. 计算表达式的值

题目链接:SOJ D1253

给定整数x xxy yy的值,计算3 × x + 2 × y 3 \times x+2 \times y3×x+2×y的值。

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

  • 输入
    一行包含2 22个整数x , y x,yx,y,以空格作为分隔。数据保证最后计算结果还在整数表示范围内。
  • 输出
    按照题目要求输出结果。
  • 样例输入
    2 3
  • 样例输出
    12

思路分析

此题考察基本输入输出与算术运算,属于入门题。按照题意输入xy,然后输出3*x + 2*y即可。

/* * Name: T4.cpp * Problem: 计算表达式的值 * Author: Teacher Gao. * Date&Time: 2024/02/29 03:10 */#include<iostream>usingnamespacestd;intmain(){intx,y;cin>>x>>y;cout<<3*x+2*y;return0;}

T5. 与指定数字相同的数的个数

题目链接:SOJ D1427

输出一个整数序列中与指定数字相同的数的个数。

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

  • 输入
    输入包含2 22行:
    第一行为n nnm mm,表示整数序列的长度(n ≤ 100 n \le 100n100)和指定的数字,中间用一个空格分开。
    第二行为n nn个整数,整数之间以一个空格分开。
  • 输出
    输出为n nn个数中与m mm相同的数的个数。
  • 样例输入
    3 2 2 3 2
  • 样例输出
    2

思路分析

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

此题只需要将输入的n nn个整数依次与m mm进行比较即可。设置一个计数器变量t o t tottot进行统计,如果输入的整数和m mm相等,则t o t tottot1 11,注意t o t tottot需要初始化为0 00

/* * Name: T5.cpp * Problem: 与指定数字相同的数的个数 * Author: Teacher Gao. * Date&Time: 2026/01/10 01:33 */#include<iostream>usingnamespacestd;intmain(){intn,m,x,tot=0;cin>>n>>m;for(inti=1;i<=n;i++){cin>>x;if(x==m){tot++;}}cout<<tot<<endl;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 20:22:22

音乐自由革命:浏览器端解锁加密音频的完整方案

音乐自由革命&#xff1a;浏览器端解锁加密音频的完整方案 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址: https://gitc…

作者头像 李华
网站建设 2026/4/11 12:51:56

DMA内存修改技术完整指南:从零基础到高效应用

DMA内存修改技术完整指南&#xff1a;从零基础到高效应用 【免费下载链接】CheatEngine-DMA Cheat Engine Plugin for DMA users 项目地址: https://gitcode.com/gh_mirrors/ch/CheatEngine-DMA 还在为传统内存修改工具的局限性而烦恼吗&#xff1f;CheatEngine-DMA插件…

作者头像 李华
网站建设 2026/4/18 8:02:04

终极Mac电池管理解决方案:深度解析Battery Toolkit架构与实现

终极Mac电池管理解决方案&#xff1a;深度解析Battery Toolkit架构与实现 【免费下载链接】Battery-Toolkit Control the platform power state of your Apple Silicon Mac. 项目地址: https://gitcode.com/gh_mirrors/ba/Battery-Toolkit 在Apple Silicon架构全面普及的…

作者头像 李华
网站建设 2026/4/18 11:32:07

Qwen2.5-7B镜像部署推荐:开箱即用的网页推理服务搭建教程

Qwen2.5-7B镜像部署推荐&#xff1a;开箱即用的网页推理服务搭建教程 1. 引言&#xff1a;为什么选择Qwen2.5-7B进行网页推理&#xff1f; 1.1 大模型落地的现实挑战 随着大语言模型&#xff08;LLM&#xff09;在自然语言理解、代码生成、多轮对话等任务中展现出强大能力&am…

作者头像 李华
网站建设 2026/4/18 8:40:21

二极管的伏安特性曲线:新手必看入门指南

二极管伏安特性&#xff1a;从零看懂非线性世界的入口你有没有遇到过这种情况——明明电路接对了&#xff0c;电源也加上了&#xff0c;可设备就是不工作&#xff1f;排查半天才发现&#xff0c;是某个二极管在“悄悄”挡路。而它为什么导通、什么时候截止、反向电压加多大会击…

作者头像 李华