2023年09月 C/C++(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

news2024/11/16 19:28:46

在这里插入图片描述

C/C++编程(1~8级)全部真题・点这里
Python编程(1~6级)全部真题・点这里

第1题:日期输出

给定两个整数,表示一个日期的月和日。请按照"MM-DD"的格式输出日期,即如果月和日不到2位时,填补0使得满足2位。
时间限制:10000
内存限制:65536
输入
2个整数m,d(0 < m <= 12, 0 < d <= 31)。数据保证日期合法。
输出
按照题目要求输出日期
样例输入
7 18
样例输出
07-18

以下是一个使用C语言编写的解决方案,用于按照给定的月和日格式化输出日期:

#include <stdio.h>

int main() {
    int month, day;
    scanf("%d %d", &month, &day);

    // 格式化输出日期
    printf("%02d-%02d\n", month, day);

    return 0;
}

在这个程序中,我们使用 scanf 函数分别读取输入的月份和日期。

然后,使用 printf 函数进行格式化输出,其中 %02d 表示按照两位数字的格式输出整数,不足两位时在前面补零。

最后,使用 \n 输出换行符,使输出结果换行。

这样设计的程序能够根据输入的月和日按照要求的格式输出日期。

第2题:计算(a+b)*(c-b)的值

给定3个整数a、b、c,计算表达式(a+b)*(c-b)的值。
时间限制:1000
内存限制:65536
输入
输入仅一行,包括三个整数a、b、c, 数与数之间以一个空格分开。 (-10,000 < a,b,c < 10,000)
输出
输出一行,即表达式的值
样例输入
2 3 5
样例输出
10

以下是使用C语言编写的计算(a+b)*(c-b)表达式的值的程序:

#include <stdio.h>

int main() {
    int a, b, c;
    scanf("%d %d %d", &a, &b, &c);

    int result = (a + b) * (c - b);

    printf("%d\n", result);

    return 0;
}

程序首先使用scanf函数从标准输入读取三个整数a、b、c的值。

然后,根据给定的表达式(a+b)*(c-b)计算结果,并将结果赋值给变量result

最后,使用printf函数将变量result的值输出到标准输出。

例如,如果输入为2 3 5,则程序将计算(2+3)*(5-3)的值,结果为10,并将其输出到标准输出。

第3题:有一门课不及格的学生

给出一名学生的语文和数学成绩,判断他是否恰好有一门课不及格(成绩小于60分)。
时间限制:10000
内存限制:65536
输入
一行,包含两个在0到100之间的整数,分别是该生的语文成绩和数学成绩。
输出
若该生恰好有一门课不及格,输出1;否则输出0。
样例输入
50 80
样例输出
1

以下是使用C语言编写的判断学生是否恰好有一门课不及格的程序:

#include <stdio.h>

int main() {
    int chinese, math;
    scanf("%d %d", &chinese, &math);

    int isOneSubjectFailed = 0;

    if (chinese < 60 && math >= 60) {
        isOneSubjectFailed = 1;
    } else if (chinese >= 60 && math < 60) {
        isOneSubjectFailed = 1;
    }

    printf("%d\n", isOneSubjectFailed);

    return 0;
}

程序首先使用scanf函数从标准输入读取学生的语文和数学成绩。然后,使用一个变量isOneSubjectFailed来表示学生是否恰好有一门课不及格,初始值为0。

接下来,使用条件语句判断学生的成绩情况。如果语文成绩小于60分而数学成绩大于等于60分,或者语文成绩大于等于60分而数学成绩小于60分,则将isOneSubjectFailed赋值为1,表示学生恰好有一门课不及格。

最后,使用printf函数将isOneSubjectFailed的值输出到标准输出。

例如,如果输入为50 80,则程序将判断学生的成绩情况,发现语文成绩小于60分而数学成绩大于等于60分,因此将isOneSubjectFailed赋值为1,并将其输出到标准输出。

第4题:特殊求和

如果一个数能够被7整除或者十进制表示中含有数字7,那么我们称这个数为幻数,比如17,21,73是幻数,而6,59不是。
对于给定的N,求出1~N中所有幻数的和。
时间限制:1000
内存限制:65536
输入
一个整数N(1 < N < 10000)。
输出
一个整数,表示1~N中所有幻数的和。
样例输入
14
样例输出
21

以下是使用C语言编写的求解1~N中所有幻数的和的程序:

#include <stdio.h>

int isMagicNumber(int num) {
    if (num % 7 == 0) {
        return 1;
    }

    while (num > 0) {
        int digit = num % 10;
        if (digit == 7) {
            return 1;
        }
        num /= 10;
    }

    return 0;
}

int main() {
    int N;
    scanf("%d", &N);

    int sum = 0;
    for (int i = 1; i <= N; i++) {
        if (isMagicNumber(i)) {
            sum += i;
        }
    }

    printf("%d\n", sum);

    return 0;
}

程序首先定义一个函数isMagicNumber,用于判断一个数是否为幻数。函数接受一个整数作为参数,并根据条件判断是否为幻数。如果该数能够被7整除,或者十进制表示中含有数字7,则返回1,表示是幻数;否则返回0,表示不是幻数。

接下来,程序使用scanf函数从标准输入读取整数N,表示要求解1~N中所有幻数的和。

然后,使用一个循环从1迭代到N,对每个数字进行判断。如果该数字是幻数,则将其加到变量sum中。

最后,使用printf函数将变量sum的值输出到标准输出。

例如,如果输入为14,则程序将迭代判断1~14中的数字。其中,数字7和14是幻数,因此将它们加到sum中。最后,将sum的值输出到标准输出,结果为21。

第5题:比n小的最大质数

对于给定的n,求比n小的质数中最大的一个。
质数是指一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数。
时间限制:1000
内存限制:65536
输入
一个整数n。( 2 < n < 10000)
输出
一个整数,即题目要求的解。
样例输入
100
样例输出
97

以下是使用C语言编写的求解比n小的最大质数的程序:

#include <stdio.h>

int isPrime(int num) {
    if (num < 2) {
        return 0;
    }

    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0) {
            return 0;
        }
    }

    return 1;
}

int main() {
    int n;
    scanf("%d", &n);

    int maxPrime = 0;
    for (int i = n - 1; i >= 2; i--) {
        if (isPrime(i)) {
            maxPrime = i;
            break;
        }
    }

    printf("%d\n", maxPrime);

    return 0;
}

程序首先定义一个函数isPrime,用于判断一个数是否为质数。函数接受一个整数作为参数,并进行质数判断。如果该数小于2,则返回0,表示不是质数。否则,使用一个循环从2迭代到该数的平方根,判断是否能被这些数整除。如果能被整除,则返回0,表示不是质数;否则返回1,表示是质数。

接下来,程序使用scanf函数从标准输入读取整数n,表示要求解比n小的最大质数。

然后,使用一个循环从n-1开始递减到2,对每个数字进行质数判断。如果该数字是质数,则将其赋值给变量maxPrime,并跳出循环。

最后,使用printf函数将变量maxPrime的值输出到标准输出。

例如,如果输入为100,则程序将递减判断99、98、97等数字。其中,数字97是质数,因此将其赋值给maxPrime。最后,将maxPrime的值输出到标准输出,结果为97。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1084297.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Arduino是如何实现打开串口时,程序复位的?

引言 使用过Arduino的都应该发现过&#xff0c;在打开Arduino IDE自带的COM串口助手的时候&#xff0c;Arduino开发板会复位。在打开其他串口助手的时候也会。这是为什么呢&#xff1f; 原因分析 首先看看arduino的原理图&#xff1a; 我们可以看看与复位引脚相关的部…

【EI会议征稿】第四届材料化学与复合材料国际学术会议(MCCM 2023)

第四届材料化学与复合材料国际学术会议&#xff08;MCCM 2023&#xff09; 2023 4th International Conference on Material Chemistry and Composite Materials (MCCM 2023) 第四届材料化学与复合材料国际学术会议&#xff08;MCCM 2023&#xff09;将于2023年12月22-24日…

shiro550复现环境搭建

前言 Shiro反序列化漏洞指的是Apache Shiro安全框架中的一个潜在漏洞&#xff0c;该漏洞可能导致攻击者能够通过精心构造的恶意序列化对象来执行任意代码或进行拒绝服务&#xff08;DoS&#xff09;攻击。 这种漏洞的根源是在Shiro的RememberMe功能中&#xff0c;当用户选择“…

一个简单算法解决集群定时任务重复执行

好久不见&#xff0c;今天给大家分享一个非常好用的方法&#xff0c;来解决集群定时任务如何避免重复执行的问题。 需求描述&#xff1a; 大家都知道&#xff0c;定时任务在我们实际项目当中是会经常被使用到的&#xff0c;在生产环境中&#xff0c;为了保证服务的高可用&…

做一个物联网的后台程序与数据库设计

数据库部分 先设计一个简单的数据库。表结构如下: sql语句如下: SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0;-- ---------------------------- -- Table structure for realtimedata -- ---------------------------- DROP TABLE IF EXISTS `realtimedata`

【pycharm】sqlite3:Driver class ‘org.sqlite.JDBC‘ not found

pycharm 连接sqlite3的时候&#xff0c;点击&#xff1a;Test Connection 提示&#xff1a;Driver class ‘org.sqlite.JDBC’ not found. 点击&#xff1a;Download missing driver files 点击&#xff1a;Test Connection 这样就ok了&#xff1b;

执行make menuconfig问题的解决

执行make menuconfig 出现问题 在终端输入以下命令执行。 make menuconfig在终端输入上面命令执行时&#xff0c;没有成功运行&#xff0c;出现了如下的问题。 出现这个错误提示意味着在运行 make menuconfig 命令时&#xff0c;系统找不到 ncurses 库。ncurses 是一种文本用…

Python系列:彩色日志详解

前言 在使用Python进行编程时&#xff0c;我相信很多小伙伴都有一个共通的习惯&#xff0c;就是不管在什么场景下&#xff0c;都会先使用print()将我们获取到的数据打印出来以此来确保自己的代码没有问题。虽说在pycharm中提供了DEBUG功能&#xff0c;但是还是有很多小伙伴用不…

你知道期权和期货有什么关联和区别吗?解析一下!

随着金融市场的不断发展&#xff0c;期权和期货成为了两种常见的金融衍生品&#xff0c;它们都具有规避风险和发现价格的功能。很多入门不知道期权和期货哪个更好&#xff0c;下文科普你知道期权和期货有什么关联和区别吗&#xff1f;解析一下&#xff01;本文来源&#xff1a;…

AI Web3 盛会「EDGE」在港闭幕,融云国际影响力持续提升

&#x1f446;点击报名「爱嗨游」线上发布会 9 月 25 日至 27 日&#xff0c;全球规模最大的 AI & Web3 投资盛会——EDGE 峰会在中国香港举办&#xff0c;融云作为战略合作伙伴与来自世界各地的企业家、投资人、学者和热门项目方一同完成了这一盛会。关注【融云全球互联网…

虾皮商品评论数据接口,shopee商品评论API接口,虾皮API接口

虾皮商品评论数据接口的申请步骤如下&#xff1a; 在开放平台注册账号&#xff0c;申请API调用权限。登录开放平台&#xff0c;进入API管理界面&#xff0c;在接口列表中找到“商品详情”API接口&#xff0c;点击“申请使用”。填写API申请表格&#xff0c;包括API调用用途、申…

边端小场景音视频流分发架构

备注&#xff1a;绿色线条&#xff0c;红色线条&#xff0c;蓝色线条&#xff0c;均是表示同一路流的不同的协议而已 1&#xff09;IPC本身的流媒体的能力有限&#xff0c;一般IPC支持的客户端数10~50个&#xff0c;媒体分发能力&#xff1a;10~20路&#xff0c;看设备品牌能力…

AQS简介

AQS 简介 AQS&#xff08;AbstractQueuedSynchronizer&#xff09;是Java中用于实现同步器的抽象基类。它提供了一种灵活的方式来创建自定义的同步器&#xff0c;如锁、信号量等。AQS的底层包含了一些重要的成员变量&#xff0c;其中最重要的是state&#xff0c;用于表示同步…

2.连接Cesium Ion

1.登录Cesium 打开菜单上的 Cesium->Cesium. 点击 Connect To Cesium ion,进入网站进行登录以及授权。 2.创建Token 点击Token按钮&#xff0c;弹出Token选择界面&#xff0c;如果没有Token则创建一个&#xff0c;有的话可以直接进行选择。至此&#xff0c;我们可以在Unity中…

【electron】手把手教你在 electron 环境下使用 vue-devtools,附详细报错解决办法

▒ 目录 ▒ &#x1f6eb; 问题描述环境 1️⃣ vue-devtools问题来源解决思路 2️⃣ 屏蔽electron-devtools-installer加载的代码3️⃣ 加载本地vue-devtools插件代码实现electron加载本地插件获取vue-devtools&#xff1a;【推荐】Edge下载最新插件获取vue-devtools&#xff1…

Linux Shell 实现一键部署vmtools

VMware Tools 简介 VMware Tools 中包含一系列服务和模块&#xff0c;可在 VMware 产品中实现多种功能&#xff0c;从而使用户能够更好地管理客户机操作系统&#xff0c;以及与客户机操作系统进行无缝交互。 VMware Tools 具备以下功能&#xff1a; 将消息从主机操作系统传递…

2023年中国家用照明市场发展趋势分析:家用照明市场中智能产品提升显著[图]

2016-2019年我国家用照明行业迎来初步快速发展&#xff0c;2020-2021年受疫情影响增速稍微放缓&#xff0c;2022年&#xff0c;我国家用照明行业规模为362.8亿元&#xff0c;同比增长0.58%&#xff1b;预计2023年家用照明行业表现将有明显反弹&#xff0c;市场规模将达413亿元&…

DW网页作业成品下载后导入Dreamweaver如何新建站点及导出站点

很多学生下载了HTMLhttps://blog.csdn.net/qq_41101110?spm1011.2415.3001.5343后&#xff0c;想自己进行修改图文或者文字内容&#xff0c;或者修改网页文件名称。对于基础较差的同学&#xff0c;使用Dreamweaver新建站点导入作品后再修改&#xff0c;就更简单些了。 新建站…

【深度学习】MNIST手写数字数据集的分类识别

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

使用docker安装db2

使用docker安装db2 1. 前言1.1 关于docker的安装1.2 安装db2版本选择参考 2. 拉取镜像3. 启动镜像4. 进入容器&#xff0c;切换用户4.1 进入容器4.2 切换用户4.3 其他命令 5. 可视化工具DBeaver连接db25.1 连接5.2 简单使用 1. 前言 1.1 关于docker的安装 关于Linux上docker的…