java基础提练习记录
第一题:
题目:判断101-200之间有多少个素数,并输出所有素数。 程序:
public class LateTest02
{
public static void main(String[] args){
System.out.println(“请输入判断素数的范围”);
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print(“请输入第一个数(不能输入1):”);
int num1 = s.nextInt();
System.out.print(“请输入第二个数:”);
int num2 = s.nextInt();//接收两个数
int sum = prime(num1,num2); System.out.println("总共有素数" + sum + "个"); } //用来判断素数的方法 素数:prime public static int prime(int num1,int num2){ //判断素数,计算个数 int sum = 0;//素数总数计数sum for(; num1 <= num2; num1++){ boolean a = true;//用来判断是否是素数:是素数为true 不是为false for(int i = 2; i < num1; i++){//i是除数,从2开始,到num1-1结束 if(num1 % 2 == 0){ a = false; break;//当出现一次能被整除时,可以不用继续进行判断,break跳出当层循环 //可以节省运行时间 } } if(a == true){//判断是否为素数,是则输出 System.out.println(num1); sum++;//每输出一个,计数一次 } } return sum;//返回总数 }
}
第二题
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 程序:
public class LateTest03
{
public static void main(String[] args){
//java.util.Scanner s = new java.util.Scanner(System.in);
System.out.println(“以下为水仙花数:”);
daffodilNum();
}
public static void daffodilNum(){ int j = 0; for(int i = 100; i <= 999; i++){ int hundred = i / 100;//取出百位数 百位:hundred int ten = (i % 100) / 10;//取出十位上的数 int digits = i % 10;//取出个位数 个位数:digits int sum = cubed(digits) + cubed(ten) + cubed(hundred); if (sum == i) { System.out.println(i); j++; } } System.out.println("水仙花数总数:" + j); } //计算三次方的方法 三次方:cubed public static int cubed(int i){ return i * i * i; }
}
另解:
第三题
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下
的用C表示。
程序:
public class LateTest04
{
public static void main(String[] args){
System.out.println("Hello World!"); java.util.Scanner s = new java.util.Scanner(System.in); System.out.print("请输入你的成绩:"); int num = s.nextInt(); grade(num); } public static void grade( int num){ char lev = 'C'; if (num > 100 || num < 0){ System.out.println("你的成绩有误!"); return ; }else if (num <= 100 && num >= 90){ lev = 'A'; }else if (num < 90 && num >= 60){ lev = 'B'; } System.out.println("你的成绩等级为:" + lev); }
}
第四题
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 程序:
public class LateTest05
{
public static void main(String[] args){
java.util.Scanner s = new java .util.Scanner(System.in); System.out.print("请输入第一个数:"); int m = s.nextInt(); System.out.print("请输入第二个数:"); int n = s.nextInt(); System.out.println("最大公约数为:" + approximation(m,n)); System.out.println("最小公倍数为:" + multiple(m,n)); } //比较两个数的大小,返回小的数 public static int min(int m,int n){ return m < n ? m : n; } //公约数 approximation public static int approximation(int m ,int n){ int num = 1; for (int i = 2; i <= min(m,n) ; i++ ){ if(m % i == 0 && n % i == 0){ num = i; } } return num; } //公倍数 multiple public static int multiple(int m ,int n){ int num = 1; for (int i = min(m,n); i <= (m * n) ; i++ ){ if(i % m == 0 && i % n == 0){ num = i; break; } } return num; }
}
第五题
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),
几个数相加有键盘控制。
程序:
public class LateTest06
{
public static void main (String[] args){
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print(“请输入要几个数相加:”);//控制几个数相加
int num = s.nextInt();
System.out.print(“请输入数的值:”);//控制数的值 即a的值
int num1 = s.nextInt();
int sum = 0;//第n位数的值
int sum1 = 0;//总数 s
for(int i = 1; i <= num; i++){ sum = (sum * 10) + num1;//第n位数的值 //2 + 22 + 222 + ... = a1 + (a1 * 10 + a1) sum1 += sum;//总数 s if(i == num){//输出格式 System.out.print(sum + "=" + sum1); }else{ System.out.print(sum + "+" ); } } } //2 + 22 + 222 + ... = a1 + (a1 * 10 + a1)
}
第六题
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完 数。因子:假如整数n除以m,结果是无余数的整数,那么我们称m就是n的因子。 程序:
public class LateTest07
{
public static void main(String[] args){
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print(“请输入范围(从2开始):”);
int num = s.nextInt();
System.out.println(“完数有:”);
//i是被除数 j是除数 for(int i = 2; i <= num; i++){ int sum = 0;//累加数每次都要清零 //******************************这里的书写刚开始出现了错误 for(int j = 1; j < i; j++){ //*******切记不能写成 j <= i 因为一个数的本身不是其因子********** if(i % j == 0){ sum += j;//将因子累加到sum } } //System.out.println(sum + " " + i);//出现错误后检查的语句 if(sum == i){ System.out.println(i);//输出完数 } } }
}
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
新的改变
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 多屏幕编辑 Markdown文章功能;
- 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用
TOC语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
带尺寸的图片:
居中的图片:
居中并且带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的
代码片.
// An highlighted block var foo = 'bar';
生成一个适合你的列表
- 项目 项目 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用
:---------:居中
使用
:----------居左
使用
----------:居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | 'Isn't this fun?' |
‘Isn’t this fun?’ |
Quotes | "Isn't this fun?" |
“Isn’t this fun?” |
Dashes | -- is en-dash, --- is em-dash |
– is en-dash, — is em-dash |
创建一个自定义列表
- Markdown
- Text-to-HTML conversion tool
- Authors
- John
- Luke
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ(n)=(n−1)!∀n∈N\Gamma(n) = (n-1)!\quad\forall n\in\mathbb NΓ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ(z)=∫0∞tz−1e−tdt . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
Mon 06Mon 13Mon 20已完成 进行中 计划一 计划二 现有任务Adding GANTT diagram functionality to mermaid- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:
张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间,文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五这将产生一个流程图。:
链接长方形圆圆角长方形菱形- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
Created with Raphaël 2.2.0开始我的操作确认?结束yesno- 关于 Flowchart流程图 语法,参考 这儿.
导出与导入
导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
导入
如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。
注脚的解释 ↩︎
- java基础学习记录之数组选择排序的学习与练习二
- java基础学习记录之利用数组查表法进行进制转换的学习与练习六
- Java基础 for 语句嵌套 记录和练习
- java基础学习记录之for嵌套学习与练习一
- java基础学习记录之数组最值的学习与练习一
- java基础学习记录之for嵌套学习与练习三
- java基础学习记录之数组冒泡排序的学习与练习三
- java基础学习记录之数组折半查找的学习与练习四
- Java 基础 if和switch 练习记录
- Java 基础 for循环基础练习记录
- java基础学习记录之利用数组查表法进行进制转换优化的学习与练习七(十转二、十转八、十转十六)
- java基础学习记录之for嵌套学习与练习二
- java基础学习记录之利用数组进行进制转换的学习与练习五
- java基础记录--》字节与字符
- Java 基础一些代码练习笔记(Array二维数组)
- 黑马程序员-----java基础③(数组及循环练习)
- Java基础复习:线程练习2
- java基础知识记录--算法与编程(摘自张孝祥整理java面试题)
- Java 基础一些代码练习笔记(ArrayList)
- java 基础练习(调用方法)