蓝桥杯易错点汇总

1.当想输入一个数字再输入一个字符串要多一个nextLine();

int a =scan.nextInt();

String b = scan.nextLine();

在Java编程语言中,使用Scanner类进行输入时,需要注意nextInt()nextLine()方法的使用。nextInt()用于读取下一个整数,而nextLine()用于读取下一行文本。代码片段int a = scan.nextInt();会从输入中读取一个整数,并将其存储在变量a中。然而,这并不会读取该行剩余的内容,也不会读取下一行的内容。紧接着的代码片段String b = scan.nextLine();会尝试读取下一行文本,并将其存储在变量b中。但是,如果nextInt()之后直接使用nextLine(),那么nextLine()会读取到nextInt()之后的回车符,而不是下一行的内容。这是因为nextInt()读取整数后,回车符还留在输入流中,而nextLine()会读取这个回车符,认为是一个空行。为了避免这个问题,通常在nextInt()之后调用nextLine()之前,需要额外调用一次nextLine()来"消耗"掉那个回车符。例如:

int a = scan.nextInt();

scan.nextLine(); // 消耗掉nextInt()后的回车符

String b = scan.nextLine(); // 现在可以正确读取下一行文本

2.小数精度格式化用printf

System.out.printf("%.2f",dp[n][0]);保留两位小数(蜗牛题)

System.out.printf("%.2d",dp[n][0]);

不一样

待更新......

相关推荐
闻缺陷则喜何志丹2 天前
【C++贪心】P8769 [蓝桥杯 2021 国 C] 巧克力|普及+
c++·算法·蓝桥杯·洛谷
旭意3 天前
C++微基础备战蓝桥杯之数组篇10.1
开发语言·c++·蓝桥杯
旭意4 天前
C++微基础备战蓝桥杯string篇10.5
开发语言·c++·蓝桥杯
Kent_J_Truman5 天前
【第几小 / 分块】
算法·蓝桥杯
闻缺陷则喜何志丹7 天前
【贪心之临项交换】P8732 [蓝桥杯 2020 国 ABC]|普及
c++·算法·蓝桥杯·贪心·洛谷
big\hero12 天前
蓝桥杯13届省题
职场和发展·蓝桥杯
@卞14 天前
第十六届蓝桥杯软件赛C组省赛C++题解(京津冀)
c语言·c++·蓝桥杯
黑泽明Coding16 天前
mac编译vst3sdk
macos·职场和发展·蓝桥杯
咸鱼爱学习17 天前
【题解】 [蓝桥杯 2019 省 B] 特别数的和
算法·职场和发展·蓝桥杯·模拟·枚举
笙歌已沫17 天前
蓝桥杯2024年第15届B组试题D
算法·职场和发展·蓝桥杯