当前位置: 首页 > news >正文

【蓝桥杯日记】复盘篇一:深入浅出顺序结构

🚀前言

  本期是一篇关于顺序结构的题目的复盘,通过复盘基础知识,进而把基础知识学习牢固!通过例题而进行复习基础知识。

🚩目录

前言

1.字符三角形

 分析:

知识点:

代码如下

2. 字母转换

题目分析:

知识点:

代码如下 

3. 再分肥宅水

题目分析:

知识点:

代码如下 

4. 数字反转

题目分析:

知识点:

代码如下 

总结


🍊1.字符三角形

题目描述

给定一个字符,用它构造一个底边长 5 个字符,高 3个字符的等腰字符三角形。

输入格式

输入只有一行,包含一个字符。

输出格式

该字符构成的等腰三角形,底边长 5 个字符,高 3 个字符。

输入输出样例

输入 #

*

输出 #1复制

  ****
*****

说明/提示

对于 100%100% 的数据,输入的字符是 ASCII 中的可见字符。

 分析:
  1. 根据题目的描述可以得知,本题目主要考察的是关于循环的问题,只需要输入制定字符,然后输入的3行5列的等腰三角形这个是固定的。
  2. 这里需要注意的是Scanner扫描器没有获取char类型的方法,可以使用Scanner.next()进行获取字符串,然后通过String类下的CharAt方法进行截取或则subString()。

  3. 第一行是一个字符,第二行是三个,第三行是五个可以找到规律2*i(i是从1开始)-1。

知识点:

CharAt()函数进行截取字符串。

char charAt(int index)

返回char指定索引处的值。 指数范围为0length() - 1该序列的第一个char值在索引0 ,下一个索引为1 ,依此类推,与数组索引一样。

代码如下
        Scanner sc = new Scanner(System.in);
//        1.这里需要注意的是Scanner扫描器没有获取char类型的方法,
//        可以使用Scanner.next()进行获取字符串, 
//        然后通过String类下的CharAt方法进行截取或则subString()char s=sc.next().charAt(0);
//        for (int i = 0; i < 3; i++) {
//            输出空格for (int j = 0; j <3-i-1; j++)System.out.print(" ");
//          负责输出指定字符串for (int k=0;k<(i+1)*2-1;k++){System.out.print(s);}
//            整体换行System.out.println();}

🌽2. 字母转换

题目描述

输入一个小写字母,输出其对应的大写字母。例如输入 q[回车] 时,会输出 Q。

输入格式

输出格式

输入

输入 #1

q

输出样例

输出 #1

Q
题目分析:
  1. 本题目主要考察的是大小写字母的ASCII码,大写字母A的ascii码为65,而小写字母a的acsii码为97,由此我们可以确定大小写字母之间的ascii码之间相差32。
  2. 可以使用String类的toUpperCase()方法将小写字母转换为大写字母。
知识点:

toUpperCase()方法

代码如下 
 static void fun(){Scanner sc=new Scanner(System.in);String str=sc.next();System.out.println(str.toUpperCase());}

🍋3. 再分肥宅水

题目描述

现在有 t 毫升肥宅快乐水,要均分给 n 名同学。每名同学需要 2 个杯子。现在想知道每名同学可以获得多少毫升饮料(严格精确到小数点后 3 位),以及一共需要多少个杯子。

输入格式

输入一个实数 t 和一个正整数 n,使用空格隔开。

输出格式

输出两行。

第一行输出一个三位小数,表示可以获得多少毫升饮料。第二行输出一个正整数,表示一共需要多少个杯子。

输入输出样例

输入 #1

500.0 
3

输出 #1

166.667
6

说明/提示

对于所有数据,0≤t≤100000≤t≤10000 且小数点后不超过 3 位,1≤t≤10001≤n≤1000。

题目分析:
  1. 先把快乐肥宅水分给n个学生,及使用总量除以学生的个数。
  2. 每个学生两个杯子,则n个学生n*2个杯子。
知识点:

常用保留小数点位数的方法:

  1.使用String.format()字符串格式输出

format("输出格式",数值),"%.保留的小数位数f",按照四舍五入进行保留小数位数。

  2.使用数学函数Math.round() 四舍五入

        double d = 12.344345; //保留两位小数long num = Math.round(d * 100);System.out.println(num / 100.0);

 3.使用BigDecimal类,可以进行复杂的保留小数位数,进行高精度运算时常使用。

 BigDecimal bd=new BigDecimal( 12.344345);System.out.println(bd.setScale(2,BigDecimal.ROUND_DOWN));

  使用BigDecimal类中的setScale()函数设置需要保留的小数位数和保留小数位数的格式。我们上边是使用BigDecimal中的静态量,ROUND_DOWN.可以替换为以下的内容。

常用:

个人认为:四舍五入

ROUND_UP:舍入模式从零开始。 始终在非零丢弃分数之前增加数字。

个人认为:直接截断
ROUND_DOWN:舍入模式向零舍入。 不要在丢弃的分数之前递增数字(即截断)。

  4.DecimalFormat类

                        

//        构造方法设置格式
DecimalFormat df=new DecimalFormat("#.00");String str=df.format(12.345345);System.out.println(str);

#.00:#表示一个数字,0显示为缺省(即空字符),.就表示他本来的意思,0表示一个数字,00表示两个数字。

代码如下 
Scanner sc=new Scanner(System.in);double t=sc.nextDouble();int n=sc.nextInt();
//         String.format ("%.1f", num)System.out.println(String.format("%.3f",t/n));System.out.println(2*n);

🥭4. 数字反转

题目描述

输入一个不小于 100 且小于 1000,同时包括小数点后一位的一个浮点数,例如 123.4 ,要求把这个数字翻转过来,变成 4.321 并输出。

输入格式

一行一个浮点数

输出格式

一行一个浮点数

输入输出样例

输入 #1

123.4

输出 #1

4.321
题目分析:
  1. 对数值进行翻转,把数值转换为字符串使用StringBuild类中的reverse()函数进行对字符串进行翻转
知识点:

1.String类中的方法修改时不会修改本身,除非再次对String类进行赋值,而StringBuilderStringBuffer类对类使用方法时会自动修改原来的类。

代码如下 
 Scanner sc = new Scanner(System.in);double n= sc.nextDouble();String str=String.valueOf(n);System.out.println(new StringBuilder(str).reverse());

总结

  通过几道简单的例题,通过对以下内容的复习:

  1. for循环的复习和控制空格字符的输出。
  2. 可以了解ascii码之间的转换规律。
  3. 牢牢记住保留指定位数的小数。
  4. reverse()实现对字符串的倒置。
http://www.lryc.cn/news/285235.html

相关文章:

  • 尚无忧【无人共享空间 saas 系统源码】无人共享棋牌室系统源码共享自习室系统源码,共享茶室系统源码
  • SQL Server 恢复软件
  • 奇安信天擎 rptsvr 任意文件上传漏洞复现
  • Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)
  • 阿里云GPU服务器ECS实例规格详细说明
  • Kafka为什么在消息积压时不能直接通过消费者水平扩容来提升消费速度?
  • “揭秘Maven:如何成为大数据项目的管理能手?“
  • 基于BERT对中文邮件内容分类
  • 【EFCore仓储模式】介绍一个EFCore的Repository实现
  • oracle篇—19c新特性自动索引介绍
  • 稳定性——JE流程
  • 【控制篇 / 分流】(7.4) ❀ 03. 对国内和国际IP网段访问进行分流 ❀ FortiGate 防火墙
  • 01-开始Rust之旅
  • 华南理工大学数字信号处理实验实验一(薛y老师版本)matlab源码
  • 一篇文章看懂云渲染,云渲染是什么?云渲染如何计费?云渲染怎么选择
  • C++进阶--哈希表模拟实现unordered_set和unordered_map
  • Elasticsearch各种高级文档操作
  • 激光无人机打击系统——光束控制和指向系统
  • pycharm import torch
  • flask 与小程序 购物车删除和编辑库存功能
  • 蓝桥杯真题(Python)每日练Day3
  • 结构体大揭秘:代码中的时尚之选(上)
  • 【unity学习笔记】语音驱动blendershape
  • docker常用基础命令
  • 自动驾驶中的坐标系
  • js数组的截取和合并
  • 2024美赛数学建模思路 - 案例:感知机原理剖析及实现
  • 大中台,小前台:打造快速响应市场的企业竞争力
  • SpringCloud Alibaba 深入源码 - Nacos 和 Eureka 的区别(健康检测、服务的拉取和订阅)
  • Java复习_3