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

在这里插入图片描述

第1题:加一

输入一个整数x,输出这个整数加1后的值,即x+1的值。
时间限制:1000
内存限制:65536
输入
一个整数x(0 ≤ x ≤ 1000)。
输出
按题目要求输出一个整数。
样例输入
9
样例输出
10

以下是使用C语言编写的解决方案,用于计算输入整数x加1后的值:

#include <stdio.h>

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

    int result = x + 1;

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

    return 0;
}

在此解决方案中,我们首先使用scanf函数读取输入的整数x。然后,我们将x加1,并将结果存储在变量result中。

最后,我们使用printf函数输出计算得到的结果。

编译并运行上述代码,根据给定的输入示例,将会输出x加1后的值:

10

第2题:(a/b)*c的值

给定整数a、b、c,计算(a / b)*c的值,这里的除法为实数除法。
时间限制:1000
内存限制:65536
输入
一行,三个整数a、b、c,整数间以空格分隔。(1 ≤ a,b,c ≤ 1000)
输出
将计算结果保留6位小数输出。
样例输入
1 3 3
样例输出
1.000000

以下是使用C语言编写的解决方案,用于计算表达式(a / b) * c的值,并将结果保留6位小数输出:

#include <stdio.h>

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

    double result = (double) a / b * c;

    printf("%.6f\n", result);

    return 0;
}

在此解决方案中,我们首先使用scanf函数读取输入的三个整数abc。然后,我们使用类型转换将a转换为double类型,并进行实数除法计算(a / b)。接下来,我们将得到的结果乘以c,并将最终结果存储在变量result中。

最后,我们使用printf函数以浮点数格式%.6f输出计算得到的结果,保留6位小数。

编译并运行上述代码,根据给定的输入示例,将会输出计算结果(a / b) * c的值:

1.000000

第3题:判断是否存在重复的数

给定3个数,判断是否存在2个数相等,如果存在输出"YES", 否者输出"NO"。
时间限制:5000
内存限制:65536
输入
1行,包含3个整数,以空格分隔。
输出
按照题目要求输出结果
样例输入
2 7 2
样例输出
YES

以下是使用C语言编写的解决方案,用于判断给定的3个数中是否存在两个相等的数:

#include <stdio.h>

int main() {
    int num1, num2, num3;
    scanf("%d %d %d", &num1, &num2, &num3);

    if (num1 == num2 || num1 == num3 || num2 == num3) {
        printf("YES\n");
    } else {
        printf("NO\n");
    }

    return 0;
}

在此解决方案中,我们首先使用scanf函数读取输入的三个整数num1num2num3。然后,我们使用条件语句if来检查是否存在两个数相等的情况。如果num1等于num2num1等于num3num2等于num3,则输出"YES";否则,输出"NO"。

编译并运行上述代码,根据给定的输入示例,将会输出判断结果:

YES

第4题:整数的立方和

给定一个正整数k(1
时间限制:1000
内存限制:65536
输入
输入只有一行,该行包含一个正整数k。
输出
输出只有一行,该行包含1到k的立方和。
样例输入
5
样例输出
225

以下是使用C语言编写的解决方案,用于计算1到k的立方和:

#include <stdio.h>

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

    int sum = 0;
    for (int i = 1; i <= k; i++) {
        sum += i * i * i;
    }

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

    return 0;
}

在此解决方案中,我们首先使用scanf函数读取输入的正整数k。然后,我们使用一个循环从1到k遍历每个整数,并将当前整数的立方值累加到变量sum中。

最后,我们使用printf函数输出计算得到的立方和。

编译并运行上述代码,根据给定的输入示例,将会输出1到k的立方和:

225

第5题:自整除数

对一个整数n,如果其各个位数的数字相加得到的数m能整除n,则称n为自整除数.例如21,21%(2+1)==0,所以21是自整除数.现求出从10到n(n < 100)之间的所有自整除数.
时间限制:1000
内存限制:65536
输入
有一行,整数n,(10 <= n < 100)
输出
有多行.按从小到大的顺序输出所有大于等于10,小于等于n的自整除数,每行一个自整除数.
样例输入
47
样例输出
10
12
18
20
21
24
27
30
36
40
42
45

以下是使用C语言编写的解决方案,用于找出从10到给定数字n之间的所有自整除数:

#include <stdio.h>

int isSelfDividing(int num) {
    int temp = num;
    while (temp > 0) {
        int digit = temp % 10;
        if (digit == 0 || num % digit != 0) {
            return 0;
        }
        temp /= 10;
    }
    return 1;
}

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

    for (int i = 10; i <= n; i++) {
        if (isSelfDividing(i)) {
            printf("%d\n", i);
        }
    }

    return 0;
}

在此解决方案中,我们首先定义了一个名为isSelfDividing的函数,用于判断一个整数是否为自整除数。在该函数中,我们使用一个循环从右向左逐个提取数字,并检查是否能整除原始数。如果某个位上的数字为0或者无法整除原始数,则返回0;如果所有位上的数字都能整除原始数,则返回1。

在主函数中,我们首先使用scanf函数读取输入的整数n。然后,我们使用一个循环从10到n遍历每个整数,并调用isSelfDividing函数判断是否为自整除数。如果是,则使用printf函数输出该自整除数。

编译并运行上述代码,根据给定的输入示例,将会输出从10到n之间的所有自整除数:

10
12
18
20
21
24
27
30
36
40
42
45

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Shell编程之正则表达式(非常详细)

正则表达式 1.通配符和正则表达式的区别2.基本正则表达式2.1 元字符 &#xff08;字符匹配)2.2 表示匹配次数2.4 位置锚定2.5 分组 和 或者 3.扩展正则表达式4.部分文本处理工具4.1 tr 命令4.2 cut命令4.3 sort命令4.4 uniq命令 1.通配符和正则表达式的区别 通配符一般用于文件…

Linux系统下安装Git软件

环境说明 Linux系统&#xff1a;CentOS 7.9 安装GCC等 JDK版本&#xff1a;jdk-8u202-linux-x64.tar.gz Maven版本&#xff1a;apache-maven-3.8.8-bin.tar.gz 在以上环境下安装Git&#xff08;git-2.41.0.tar.gz&#xff09;软件。 查看是否安装Git软件 查看Git版本&#…

【Linux】以太网协议——数据链路层

链路层解决的问题 IP拥有将数据跨网络从一台主机送到另一台主机的能力&#xff0c;但IP并不能保证每次都能够将数据可靠的送到对端主机&#xff0c;因此IP需要上层TCP为其提供可靠性保证&#xff0c;比如数据丢包后TCP可以让IP重新发送数据&#xff0c;最终在TCP提供的可靠性机…

标记垃圾,有三种色彩:四千长文带你深入了解三色标记算法

&#x1f52d; 嗨&#xff0c;您好 &#x1f44b; 我是 vnjohn&#xff0c;在互联网企业担任 Java 开发&#xff0c;CSDN 优质创作者 &#x1f4d6; 推荐专栏&#xff1a;Spring、MySQL、Nacos、Java&#xff0c;后续其他专栏会持续优化更新迭代 &#x1f332;文章所在专栏&…

ArcGIS Maps SDK for JavaScript系列之一:在Vue3中加载ArcGIS地图

目录 ArcGIS Maps SDK for JavaScript简介ArcGIS Maps SDK for JavaScript 4.x 的主要特点和功能AMD modules 和 ES modules两种方式比较Vue3中使用ArcGIS Maps SDK for JavaScript的步骤创建 Vue 3 项目安装 ArcGIS Maps SDK for JavaScript创建地图组件 ArcGIS Maps SDK for …

Java多线程知识点,看这一篇就够了!(超详细)

目录 一、认识线程&#xff08;Thread&#xff09; 1、概念 2、第一个多线程程序 &#xff08;1&#xff09;观察线程 3、创建线程 二、Thread 类及常见方法 1、Thread 的常见构造方法 2、Thread 的几个常见属性 3、启动一个线程&#xff1a;start 4、终止一个线程 &…

注意:阿里云服务器随机分配可用区说明

阿里云服务器如有ICP备案需求请勿选择随机可用区&#xff0c;因为当前地域下的可用区可能不支持备案&#xff0c;阿里云百科分享提醒大家&#xff0c;如果你的购买的云服务器搭建网站应用&#xff0c;网站域名需要使用这台云服务器备案的话&#xff0c;不要随机分配可用区&…

什么是响应式设计?列举几种实现响应式设计的方法。

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 什么是响应式设计&#xff1f;⭐ 实现响应式设计的方法⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏…

Android OkHttp源码分析--分发器

OkHttp是当下Android使用最频繁的网络请求框架&#xff0c;由Square公司开源。Google在Android4.4以后开始将源码中 的HttpURLConnection底层实现替换为OKHttp&#xff0c;同时现在流行的Retrofit框架底层同样是使用OKHttp的。 OKHttp优点: 1、支持Http1、Http2、Quic以及Web…

使用shift关键字,写一个带二级命令的脚本(如:docker run -a -b -c中的run)

省流&#xff1a;shift关键字 探索思路 最近有一个小小的需求&#xff0c;写一个类似于docker run -a -b -c这样的脚本&#xff0c;这个脚本名为doline&#xff0c;它本身可以执行&#xff08;doline -a -b -c&#xff09;&#xff0c;同时又带有几个如run、init、start这样的…

【VSCode】查看二进制文件

1.安装插件Hex Editor 2.打开二进制文件 3.执行Hex Editor命令

基于.Net开发的ChatGPT客户端,兼容Windows、IOS、安卓、MacOS、Linux

2023年目前要说最热的点&#xff0c;肯定是ChatGPT了。 ChatGPT官方提供的网页版本&#xff0c;还有需要科*上网&#xff0c;很多人都会基于此进行封装。 现在是移动互联网时代&#xff0c;基于手机APP的需求还是很大的。 所以&#xff0c;今天给大家推荐一个ChatGPT客户端开…

YOLOv5入门实践(2)— 手把手教你使用make sense标注数据集(附工具地址+使用教程)

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。鉴于labelimg图像标注软件安装起来比较麻烦&#xff0c;本节课再给大家介绍另外一款数据集标注工具。这是一款在线标注数据集的工具&#xff0c;用起来非常的方便。&#x1f308; 前期回顾&#xff1a; YOLOv5入门实践&…

【深度学习MOT】SMILEtrack SiMIlarity LEarning for Multiple Object Tracking,论文

论文&#xff1a;https://arxiv.org/abs/2211.08824 文章目录 AbstractIntroduction2. 相关工作2.1 基于检测的跟踪2.1.1 检测方法2.1.2 数据关联方法 2.2 基于注意力的跟踪 3. 方法3.1 架构概述3.2 用于重新识别的相似性学习模块&#xff08;SLM&#xff09; Experimental Res…

Mysql数据库第十三课-----------sql语句的拔高3--------直冲云霄

作者前言 &#x1f382; ✨✨✨✨✨✨&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ​&#x1f382; 作者介绍&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

【MySQL--->数据库基础】

文章目录 [TOC](文章目录) 一、基本概念二、实际应用中的数据库三、mysql的架构四、mysql语句分类五、存储引擎查看 一、基本概念 mysql本质是一个CS模式的网络服务,mysql是客户端,mysqld是服务端,提供高效的数据存取方案.数据库系统简单来说是一个数据集合加上管理这个数据集…

Git介绍及常用命令详解

一、Git的概述 Git是一个分布式版本控制工具&#xff0c;通常用来对软件开发过程中的源代码文件进行管理。 Git 会跟踪我们对文件所做的更改&#xff0c;因此我们可以记录已完成的工作&#xff0c;并且可以在需要时恢复到特定或以前的版本。Git 还使多人协作变得更加容易&…

网络安全的相关知识点

网络安全威胁类型&#xff1a; 1.窃听&#xff1a;广播式网络系统。 2.假冒 3.重放&#xff1a;重复一份报文或者报文的一部分&#xff0c;以便产生一个被授权的效果。 4.流量分析 5.数据完整性破坏 6.拒绝服务 7.资源的非授权使用 8.陷门和特洛伊木马&#xff1a;木马病毒有客…

Telerik UI for ASP.NET Core Crack

Telerik UI for ASP.NET Core Crack Telerik ASP.NET Core还包括MVC和Kendo UI捆绑包(用于JavaScript)、Figma的设计工具包以及文档处理库、用于ASP.NET Core的Telerik REPL、RTL支持、辅助功能和键盘导航、主题化、虚拟课堂培训、详细文档、演示、KBs和世界级支持。使用一整套…

Ubuntu 20.04 APT 方式安装 mysql 5.7

Ubuntu 20.04 直接 apt 安装的 mysql 是 8.0 &#xff0c;现在需要安装 5.7 版本&#xff0c;还颇费周章&#xff01;按照文档直接点进去那个 MySQL APT Repository 中&#xff08;https://dev.mysql.com/downloads/repo/apt/&#xff09;只显示了 8.0 &#xff0c;没有其他版本…
最新文章