蓝桥杯Java之输入输出练习题
题目 1:多组A+B(基础版)
题目描述:
输入多组数据,每组数据包含两个整数 A 和 B,计算它们的和。输入以 文件结尾(EOF) 结束。
输入格式:
每行包含两个整数 A 和 B(-10^9 ≤ A, B ≤ 10^9)。
输出格式:
对于每组输入,输出 A+B 的结果,每行输出一个结果。
输入示例:
1 2
3 4
5 6
输出示例:
3
7
11
解题思路:
- 题目要求输入 多组数据,并且以 EOF(End Of File) 结束,因此不能使用固定次数的循环。
- 使用 Scanner.hasNextInt() 或 BufferedReader.readLine() 来判断是否有新的输入。
解法 1:Scanner
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while (scanner.hasNextInt()) { // 判断是否有输入int a = scanner.nextInt();int b = scanner.nextInt();System.out.println(a + b);}scanner.close();}
}
解法 2:BufferedReader
import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.IOException;public class Main {public static void main(String[] args) throws IOException {BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));String line;while ((line = reader.readLine()) != null) { // 读取到EOFString[] nums = line.split(" ");int a = Integer.parseInt(nums[0]);int b = Integer.parseInt(nums[1]);System.out.println(a + b);}}}
题目 2:计算圆的面积
题目描述:
输入一个半径 r,计算圆的面积,并保留两位小数。
输入格式:
输入一个正整数 r(1 ≤ r ≤ 1000)。
输出格式:
输出圆的面积,结果保留两位小数。
输入示例:
2
输出示例:
12.57
解题思路:
- 计算圆的面积,公式为 π * r * r。
- 需要使用 格式化输出,保留两位小数,使用 System.out.printf("%.2f", area);。
Java代码:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int r = scanner.nextInt();double area = Math.PI * r * r;System.out.printf("%.2f\n", area);}}
题目 3:整数除法
题目描述:
输入两个整数 A 和 B,计算 A 除以 B 的整数部分,以及余数。
输入格式:
输入包含两个整数 A 和 B(-10^9 ≤ A ≤ 10^9, 1 ≤ B ≤ 1000)。
输出格式:
输出 A 除以 B 的整数部分和余数,用空格隔开。
输入示例:
10 3
输出示例:
3 1
解题思路:
- 直接使用 A / B 求整数部分,使用 A % B 求余数。
Java代码:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int a = scanner.nextInt();int b = scanner.nextInt();System.out.println((a / b) + " " + (a % b));}}
题目 4:换行输入的 A+B
题目描述:
输入两行,每行一个整数 A 和 B,计算 A+B。
输入格式:
第一行输入整数 A(-10^9 ≤ A ≤ 10^9),第二行输入整数 B。
输出格式:
输出 A+B 的结果。
输入示例:
5
6
输出示例:
11
解题思路:
- 需要读取 两行 输入,并计算它们的和。
Java代码:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int a = Integer.parseInt(scanner.nextLine());int b = Integer.parseInt(scanner.nextLine());System.out.println(a + b);}}
题目 5:浮点数的四舍五入
题目描述:
输入一个浮点数 x(0 ≤ x ≤ 10000),对其进行四舍五入,输出整数。
输入格式:
输入一个浮点数 x。
输出格式:
输出 x 四舍五入后的整数。
输入示例:
3.6
输出示例:
4
解题思路:
- 直接使用 Math.round(x) 进行四舍五入。
Java代码:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);double x = scanner.nextDouble();System.out.println(Math.round(x));}}
题目6:大数求和(int溢出问题)
题目描述:
输入两个整数A和B(取值范围为-1e18到1e18),输出A+B的值。
输入示例:
1000000000000000000 2000000000000000000
输出示例:
3000000000000000000
参考代码:
import java.io.*;import java.math.BigInteger;public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String[] input = br.readLine().split(" ");BigInteger a = new BigInteger(input[0]);BigInteger b = new BigInteger(input[1]);System.out.println(a.add(b));}}
解析:
数据类型选择:int和long均无法存储1e18范围的值,必须使用BigInteger。
易错点:
直接使用long仍可能溢出(如Long.MAX_VALUE = 9e18,但题目输入可能超过此范围)。
未处理负数输入。
题目3:保留三位小数的浮点运算
题目描述:
输入一个浮点数r,表示球的半径,计算球体积并保留三位小数(公式:v=3/4tr3)
输入示例:
3.0
输出示例:
113.097
参考代码:
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);double r = sc.nextDouble();double volume = 4.0 / 3 * Math.PI * Math.pow(r, 3);System.out.printf("%.3f", volume); // 自动四舍五入}}
解析:
浮点运算陷阱:
4 / 3在Java中结果为1(整数除法),需写为4.0 / 3。
格式化输出:printf中的%.3f会自动四舍五入到第三位小数。
题目4:混合输入处理
题目描述:
第一行输入一个整数n,表示后续有n组数据。每组数据包含一个字符串和一个整数,格式为[字符串] [整数]。输出所有整数之和。
输入示例:
3
Apple 5
Banana 10
Orange 15
输出示例:
30
参考代码:
import java.io.*;public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));int n = Integer.parseInt(br.readLine());int sum = 0;for (int i = 0; i < n; i++) {String[] parts = br.readLine().split(" ");sum += Integer.parseInt(parts[1]); // 取第二个元素}System.out.println(sum);}}
解析:
输入顺序处理:每组数据的第二个元素是整数,需通过索引parts[1]提取。
易错点:
字符串可能包含空格(如Hello World 20,此时parts[1]可能不是整数)。
未处理非数字字符(如输入为Apple Five)。
题目5:边界条件测试(极大值)
题目描述:
输入两个整数A和B(取值范围为0到1e18),输出A*B的值。
输入示例:
1000000000 3000000000
输出示例:
3000000000000000000
参考代码:
import java.io.*;public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String[] input = br.readLine().split(" ");long a = Long.parseLong(input[0]);long b = Long.parseLong(input[1]);System.out.println(a * b);}}
解析:
溢出问题:
1e9 * 3e9 = 3e18,在long范围内(Long.MAX_VALUE = 9e18)。
若结果超过9e18,需改用BigInteger。
相关文章:
蓝桥杯Java之输入输出练习题
题目 1:多组AB(基础版) 题目描述: 输入多组数据,每组数据包含两个整数 A 和 B,计算它们的和。输入以 文件结尾(EOF) 结束。 输入格式: 每行包含两个整数 A 和 B&#x…...
【R语言】环境空间
一、环境空间的特点 环境空间是一种特殊类型的变量,它可以像其它变量一样被分配和操作,还可以以参数的形式传递给函数。 R语言中环境空间具有如下3个特点: 1、对象名称唯一性 此特点指的是在不同的环境空间中可以有同名的变量出现&#x…...
【系统架构设计师】分布式数据库透明性
目录 1. 说明2. 分片透明3. 复制透明4. 位置透明5. 逻辑透明(局部数据模型透明)6.例题6.1 例题1 1. 说明 1.在分布式数据库系统中,分片透明、复制透明、位置透明和逻辑透明是几个重要的基本概念。2.分片透明、复制透明、位置透明和逻辑透明是…...
openpnp2.2 - 环境搭建 - 编译 + 调试 + 打包
文章目录 openpnp2.2 - 环境搭建 - 编译 调试 打包概述笔记前置任务克隆代码库切到最新的tag清理干净编译工程关掉旧工程打开已经克隆好的openpnp2.2工程将IDEA的SDK配置为openjdk23 切换中英文UI设置JAVA编译器 构建工程跑测试用例单步调试下断点导出工程的JAR包安装install…...
OpenCV:图像修复
目录 简述 1. 原理说明 1.1 Navier-Stokes方法(INPAINT_NS) 1.2 快速行进方法(INPAINT_TELEA) 2. 实现步骤 2.1 输入图像和掩膜(Mask) 2.2 调用cv2.inpaint()函数 2.3 完整代码示例 2.4 运行结果 …...
QT全局所有QSS样式实时切换
方法如下: void loadQss(int qssType) {QString name;if (qssType 1)name ":/qss/day.qss";elsename ":/qss/night.qss";QFile file(name);file.open(QFile::ReadOnly);QString qss;qss file.readAll();qApp->setStyleSheet(qss);file.…...
MySQL三大版本的演进
三大版本的演进 文章目录 三大版本的演进一:5.6版本(大跃进时期)1:支持只读事务2:innodb存储引擎增强2.1:缓冲池刷盘策略优化2.2:BufferPool缓冲池预热 3:新增Performance_Schema库监…...
利用 IMU 估计人体关节轴向和位置 —— 论文推导
Title: 利用 IMU 估计人体关节轴向和位置 —— “Joint axis and position estimation from inertial measurement data by exploiting kinematic constraints” —— 论文推导 文章目录 I. 论文回顾II. 铰接关节的约束1. 铰接关节约束的原理2. 铰接关节约束的梯度3. 铰接关节约…...
脚本一键生成管理下游k8s集群的kubeconfig
一、场景 1.1 需要管理下游k8s集群的场景。 1.2 不希望使用默认的cluster-admin权限的config. 二、脚本 **重点参数: 2.1 配置变量。 1、有单独namespace的权限和集群只读权限。 2、自签名的CA证书位置要正确。 2.2 如果配置错误,需要重新…...
数据库系统概念第六版记录 三
外码约束(Foreign Key Constraint) 外码(Foreign Key, FK)是关系数据库中的一个约束,它用于保证表之间的引用完整性。外码的值必须: 要么存在于被引用表的主键列中,要么为空(NULL&…...
YOLOv11-ultralytics-8.3.67部分代码阅读笔记-files.py
files.py ultralytics\utils\files.py 目录 files.py 1.所需的库和模块 2.class WorkingDirectory(contextlib.ContextDecorator): 3.def spaces_in_path(path): 4.def increment_path(path, exist_okFalse, sep"", mkdirFalse): 5.def file_age(path__fi…...
微信小程序案例1——制作猫眼电影底部标签导航栏
文章目录 一、项目步骤1 新建一个无AppID的movie项目2将准备好的底部标签导航图标拷贝到movie项目下面(将图标文件夹image放到项目文件夹里)3 打开App.json配置文件,在pages数组里添加4个页面路径:电影“pages/movie/movie”、影院“pages/cinema/cinema…...
【大数据技术】搭建完全分布式高可用大数据集群(Kafka)
搭建完全分布式高可用大数据集群(Kafka) kafka_2.13-3.9.0.tgz注:请在阅读本篇文章前,将以上资源下载下来。 写在前面 本文主要介绍搭建完全分布式高可用集群 Kafka 的详细步骤。 注意: 统一约定将软件安装包存放于虚拟机的/software目录下,软件安装至/opt目录下。 安…...
【服务器知识】如何在linux系统上搭建一个nfs
文章目录 NFS网络系统搭建**1. 准备工作****2. 服务器端配置****(1) 安装 NFS 服务****(2) 创建共享目录****(3) 配置共享规则****(4) 生效配置并启动服务****(5) 防火墙配置** **3. 客户端配置****(1) 安装 NFS 客户端工具****(2) 创建本地挂载点****(3) 挂载 NFS 共享目录***…...
图片画质增强:轻松提升画质
前言: 今天给大家推荐一款非常实用的图片画质增强软件,它无需联网即可使用,完全离线操作,这款软件基于先进的深度学习技术,能够对模糊图片进行强大的高清处理,效果令人惊艳。 图片画质增强:一…...
vscode快速接入deepseek 实践操作
背景说明 在deepseek快速火爆的情况下,也想自己体验一把。看看在vscode中集成进来,方便平时的脚本开发。对于年纪大的人还是非常方便的。 操作过程 安装continue 打开vscode进入扩展市场,搜索安装 安装完成就是上面的样子,会…...
mapbox进阶,添加绘图扩展插件,绘制圆形
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️MapboxDraw 绘图控件二、🍀添加绘图扩…...
Cursor 与多语言开发:全栈开发的利器
引言 全栈开发要求开发者跨越前端、后端、数据库甚至数据科学等多个技术领域,而不同技术栈往往需要切换工具和思维方式。Cursor 作为一款 AI 驱动的智能编程助手,凭借其对 20 编程语言 和主流框架的深度支持,正在成为全栈开发的“瑞士军刀”…...
2025 CCF BDCI|“基于TPU平台的OCR模型性能优化”一等奖作品
2024年12月,中国计算机学会在海南博鳌成功举办了第十二届CCF大数据与计算智能大赛(简称2024 CCF BDCI)。本届比赛的算能赛道吸引了1748名选手报名,经过激烈角逐,北京航空航天大学的“常务副SOTA”团队脱颖而出…...
FPGA的IP核接口引脚含义-快解
疑问 手册繁琐,怎样快速了解IP核各输入输出接口引脚的含义。 答疑 不慌不慌,手册确实比较详细但繁琐,如何快速知晓该部分信息,涛tao道长给你们说,简单得很,一般新入门的道友有所不知,往往后面…...
.NETCore Serilog 代码设置相关参数说明及按Sink设置不同级别(不同日志级别),使用异步方式写日志
rollingInterval设置为RollingInterval.Day与fileSizeLimitBytes配合使用: 在.NET Core Serilog中,同时设置rollingInterval RollingInterval.Day和fileSizeLimitBytes参数并不会产生配置冲突。这两个参数实际上是互补的,共同提供了更灵活的…...
Docker构建速度太慢?试试替换Debian基础镜像的APT源为阿里云(附多版本Dockerfile写法)
加速Docker构建:Debian基础镜像APT源优化全指南 每次等待Docker镜像构建完成时,看着缓慢下载的进度条,是不是感觉时间仿佛被拉长了?特别是在国内网络环境下,从官方Debian源拉取软件包的速度简直让人抓狂。我曾经的一个…...
G-Helper终极指南:华硕ROG笔记本性能优化神器完全解析
G-Helper终极指南:华硕ROG笔记本性能优化神器完全解析 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地址…...
新手零踩坑!微信搜一搜排名优化8大干货,14天轻松冲进前10
很多新手运营者都有一个共同的困惑:明明做了公众号、小程序,也发了不少内容,可在微信搜一搜里搜相关关键词,却始终找不到自己的账号和内容,排名一直徘徊在百名之外,精准流量根本引不进来,更别提…...
SmolVLA详细步骤:从start.sh启动到app.py调试的完整开发流程
SmolVLA详细步骤:从start.sh启动到app.py调试的完整开发流程 1. 项目概述与环境准备 SmolVLA是一个专为经济实惠的机器人技术设计的紧凑高效视觉-语言-动作模型。这个模型将视觉感知、语言理解和动作生成融合在一个轻量级架构中,让开发者能够快速构建智…...
文脉定序系统一键部署教程:基于Ubuntu 20.04的快速环境搭建
文脉定序系统一键部署教程:基于Ubuntu 20.04的快速环境搭建 你是不是也对那些能理解上下文、进行长文本对话的AI模型感到好奇?想自己动手部署一个来玩玩,但一看到复杂的安装步骤和满屏的命令行就头疼?别担心,今天我就…...
你的电动车续航打折了?可能是AMT换挡逻辑没调好!聊聊经济性换挡那些事儿
你的电动车续航打折了?可能是AMT换挡逻辑没调好!聊聊经济性换挡那些事儿 最近在车主群里经常看到这样的抱怨:"明明官方标称续航500公里,怎么我开起来连400都跑不到?"作为一位开了三年电动车的"老司机&q…...
原神抽卡数据分析工具:智能解析与可视化全攻略
原神抽卡数据分析工具:智能解析与可视化全攻略 【免费下载链接】genshin-wish-export biuuu/genshin-wish-export - 一个使用Electron制作的原神祈愿记录导出工具,它可以通过读取游戏日志或代理模式获取访问游戏祈愿记录API所需的authKey。 项目地址: …...
别再手动汉化了!用Docker Compose持久化配置Greenbone GVM中文界面(附yml文件修改)
持久化配置Greenbone GVM中文界面的Docker Compose实战指南 对于安全工程师和运维人员来说,Greenbone Vulnerability Management(GVM)是进行漏洞扫描的利器。但每次重启容器后都需要重新配置中文界面,这无疑增加了维护成本。本文…...
JS逆向新手也能搞定:手把手教你用Node.js补全ali140滑块canvas环境(附完整代码)
JS逆向新手也能搞定:手把手教你用Node.js补全ali140滑块canvas环境(附完整代码) 第一次接触JS逆向时,看到那些复杂的加密逻辑和环境检测代码,确实让人望而生畏。特别是遇到canvas这种需要模拟浏览器环境的场景…...
