Java基本语法练习
1.编写程序,求100以内的全部素数。
实验源码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
public class FirstClass { public static void main(String[] args) { int iTemp; //临时标记变量 System.out.print("100以内的素数为:"); for(int i = 2; i <= 100; i++) { iTemp = 1; for(int j = 2; j <= (i/2); j ++) { if(i%j == 0) { iTemp = 0; //不为素数iTemp标记为零 break; //为了提高效率结束二级循环 } } if(iTemp == 1) { System.out.print(" "+i); } } } } |
实验输出结果:100以内的素数为: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
2.从键盘随机输入20个整数,按从小到大进行排序后输出。
实验源码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import java.util.*;public class SecondClass { public static void main(String[] args) { //定义整数数组 int[] aNum = new int[20]; //实例化输入对象 Scanner sc = new Scanner(System.in); //输入整数 for(int i = 0; i < 20; i++) { aNum[i] = sc.nextInt(); } //冒泡排序 for(int i = 1; i < 20; i++) { for(int j = 19; j >= i; j--) { if(aNum[j] < aNum[j-1]) { //为了节省内存和提高效率所以用异或对两值交换 aNum[j] = aNum[j] ^ aNum[j-1]; aNum[j-1] = aNum[j] ^ aNum[j-1]; aNum[j] = aNum[j] ^ aNum[j-1]; } } } //输出结果 System.out.print("从小到大顺序为:"); for(int i = 0; i < 20; i++) { System.out.print(aNum[i]+" "); } }} |
实验结果:
请输入20个整数:10 20 40 90 80 78 38 24 84 29 49 50 10 28 19 48 59 29 48 29
从小到大顺序为:10 10 19 20 24 28 29 29 29 38 40 48 48 49 50 59 78 80 84 90
3.找出所有1-100之间能够被2,3,5同时整除的整数,并计算其总和。
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
public class ThirdClass { public static void main(String[] args) { int iSum = 0; System.out.print("满足条件的数字有:"); for(int i = 1; i <= 100; i++) { if(i%2 == 0 && i%3 == 0 && i%5 == 0) { iSum += i; System.out.print(i+" "); } } System.out.println("\n总和为:"+iSum); }} |
实验结果:
满足条件的数字有:30 60 90
总和为:180
4.从键盘上输入10个学生的成绩,将考试成绩百分制转五级制并输出。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
import java.util.*;public class ForthClass { public static void main(String[] args) { Scanner sc =new Scanner(System.in); int[] aScore = new int[10]; System.out.print("请输入10位同学的成绩:"); for(int i = 0; i < 10; i++) { aScore[i] = sc.nextInt(); switch(aScore[i]/10) { case 10: case 9: System.out.print("A "); break; case 8: System.out.print("B "); break; case 7: System.out.print("C "); break; case 6: System.out.print("D "); break; case 5: case 4: case 3: case 2: case 1: case 0: System.out.print("E "); break; default: System.out.print("输入有误!!"); } } } } |
实验结果:
请输入10位同学的成绩:100 20 79 85 89 60 30 60 90 40
A E C B B D E D A E
5、输入学生的数量,分别输入学生的成绩,排序,求最小值、最大值;根据某成绩查询其名次。
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
import java.util.Arrays;import java.util.Scanner;public class FifthClass { public static void main(String[] args) { //学生人数 int iCount = 0; //初始化输入类 Scanner sc = new Scanner(System.in); System.out.print("请输入学生个数以回车键结束:"); iCount = sc.nextInt(); int[] aScore = new int[iCount]; System.out.print("请输入每个学生的分数以回车键结束:"); for(int i = 0; i < iCount; i++) { aScore[i] = sc.nextInt(); } //对分数进行排序 Arrays.sort(aScore); System.out.print("分数升序排序结果为:"); for(int i = 0; i < iCount; i++) { System.out.print(aScore[i]+" "); } System.out.println(); //输出最小值 System.out.println("最小值为:" + aScore[0]); //输出最大值 System.out.println("最大值为:" + aScore[iCount-1]); //查询名次 System.out.print("请输入所要查询名次的成绩:"); int iScore = sc.nextInt(); int iKey = Arrays.binarySearch(aScore,iScore) + 1; System.out.println("其对应的名次为:"+iKey); }} |
实验结果:
请输入学生个数以回车键结束:5
请输入每个学生的分数以回车键结束:98 93 86 74 25
分数升序排序结果为:25 74 86 93 98
最小值为:25
最大值为:98
请输入所要查询名次的成绩:74
其对应的名次为:2
6.编写程序,求1!+2!+……+10!
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public class SixthClass { public static void main(String[] args) { int iSum = 0; int iMul = 1; for(int i = 1; i <= 10 ;i++) { iMul*=i; iSum += iMul; } System.out.println("结果为:"+iSum); }} |
实验结果:结果为:4037913
7、从键盘上输入字符串,判断其是否是合法的标识符。
实验源码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import java.util.Scanner;public class SeventhClass { public static void main(String[] args) { String sId; Scanner sc = new Scanner(System.in); System.out.print("请输入字符串:"); //输入字符串以换行结束 sId = sc.nextLine(); int flag = 1; //判断首个字符 if(sId.charAt(0)>= '0' && sId.charAt(0)<= '9') { flag = 0; } else { for(int i = 0;i < sId.length();i++) { //判断是否为标识符 if(sId.charAt(i) != '_' && sId.charAt(i) != '$' && !(sId.charAt(i) >= '0' && sId.charAt(i) <='9') && !(sId.charAt(i)>='a' && sId.charAt(i) <='z') && !(sId.charAt(i)>='A' && sId.charAt(i) <='Z')) { flag = 0; break; } } } if(flag == 1) { System.out.println("标识符合法!"); } else { System.out.println("标识符不合法!"); } }} |
实验结果:
请输入字符串:2$da
标识符不合法!
8、从键盘上输入一个字符、字符串、浮点数、双精度数、布尔量、整数,然后输出出来。
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
import java.util.Scanner;public class EighthClass { public static void main(String[] args) { char ch; String str; int iNum; float fNum; double dNum; boolean bNum; Scanner sc = new Scanner(System.in); System.out.print("请输入一个字符以回车键结束:"); ch = sc.nextLine().charAt(0); System.out.print("请输入一个字符串以回车键结束:"); str = sc.next(); System.out.print("请输入一个整数以回车键结束:"); iNum = sc.nextInt(); System.out.print("请输入一个浮点数以回车键结束:"); fNum = sc.nextFloat(); System.out.print("请输入一个双精度数以回车键结束:"); dNum = sc.nextDouble(); System.out.print("请输入一个布尔量以回车键结束:"); bNum = sc.nextBoolean(); System.out.println("字符:"+ch); System.out.println("字符串:"+str); System.out.println("整数:"+iNum); System.out.println("浮点数:"+fNum); System.out.println("双精度数"+dNum); System.out.println("布尔数:"+bNum); }} |
实验结果:
请输入一个字符以回车键结束:a
请输入一个字符串以回车键结束:asdf
请输入一个整数以回车键结束:22
请输入一个浮点数以回车键结束:2.343
请输入一个双精度数以回车键结束:2.32323
请输入一个布尔量以回车键结束:true
字符:a
字符串:asdf
整数:22
浮点数:2.343
双精度数2.32323
布尔数:true
9.编写一个程序:给定一个整数,在控制窗口中分别输出这个整数的补码形式的二进制数、八进制数和十六进制数。
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import java.util.Scanner;public class NitthClass { public static void main(String[] args) { int iNum = 0; Scanner sc = new Scanner(System.in); System.out.print("请输入一个整数:"); iNum = sc.nextInt(); System.out.println("二进制数:"+Integer.toBinaryString(iNum)); System.out.println("八进制数:"+Integer.toOctalString(iNum)); System.out.println("十六进制进制数:"+Integer.toHexString(iNum)); }} |
实验结果1:
请输入一个整数:-20
二进制数:11111111111111111111111111101100
八进制数:37777777754
十六进制进制数:ffffffec
实验结果2:
请输入一个整数:20
二进制数:10100
八进制数:24
十六进制进制数:14
10.求两个数的最小公倍数和最大公约数。
实验代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import java.util.Scanner;public class TenthClass { public static void main(String[] args) { int iNum1; int iNum2; int iMul; int iTemp; Scanner sc = new Scanner(System.in); System.out.print("请输入第一个整数以回车键结束:"); iNum1 = sc.nextInt(); System.out.print("请输入第二个整数以回车键结束:"); iNum2 = sc.nextInt(); iMul = iNum1 * iNum2; if(iNum1 > iNum2) { iTemp = iNum1; iNum1 = iNum2; iNum2 = iTemp; } while(iNum1 != 0) { iTemp = iNum2 % iNum1; iNum2 = iNum1; iNum1 = iTemp; } System.out.println("最大公约数:"+iNum2); System.out.println("最小公倍数:"+iMul/iNum2); }} |
实验结果:
请输入第一个整数以回车键结束:36
请输入第二个整数以回车键结束:96
最大公约数:12
最小公倍数:288
Java基本语法练习的更多相关文章
- 【转】详解Java正则表达式语法
(转自: http://www.jb51.net/article/76354.htm) 这篇文章主要介绍了Java正则表达式语法,包括常用正则表达式.匹配验证-验证Email是否正确以及字符串中查询字 ...
- C++与Java的语法区别
C++与Java的语法区别 首先,两个大的不同是主函数和怎样编译的不同,接下来是许多小的区别. main 函数C++//自由浮动的函数int main( int argc, char* argv[]) ...
- Atitti.java exp ast java表达式语法ast构造器
Atitti.java exp ast java表达式语法ast构造器 /atiplat_cms/src/com/attilax/lang/AstParser.java 原理 分割tokens_sli ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- JAVA正则表达式语法大全
[正则表达式]文本框输入内容控制 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:"^[0-9]*$". 只能输入n位的数字:"^\d{n ...
- java基础语法笔记
这段时间看了一些java,急了一些笔记,记下一遍以后复习用! 2016-07-24 15:12:40 java很多语法都跟C#类似,下面列举一些不同的地方******注意***** java中的系统方 ...
- Java基础语法(下篇)
Java基础语法(下篇) 内容概要: (1)函数的定义 (2)函数的特点 (3)函数的应用 (4)函数的重载 ...
- Java基础语法(上篇)
Java基础语法(上篇) 知识概要: (1)关键字的表示与规范 (2)标示符 (3)注释 (4 ...
- java——基础语法
java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...
- java基础语法(二)--单列模式
java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...
随机推荐
- 用VB实现SmartQQ机器人
这里为了便于介绍程序设计的流程,更多以代码形式给出,具体可用火狐浏览器的firebug插件来抓包分析,或者用谷歌浏览器的开发者工具进行抓包.抓包地址是:http://w.qq.com 第一步,是二维码 ...
- IE6 的兼容相关问题
因为在实习公司要求兼容IE6+,所以将IE6相关的样式兼容问题列出,及解决方案. 1.让页面变丑的透明背景图片问题: HTML都为以下代码: <div class="img-png&q ...
- 有状态Bean和无状态Bean的定义
有状态会话bean :每个用户有自己特有的一个实例,在用户的生存期内,bean保持了用户的信息,即“有状态”:一旦用户灭亡(调用结束或实例结束),bean的生命期也告结束.即每个用户最初都会得到一个初 ...
- java包(package)的命名规范
Java的包名都有小写单词组成,类名首字母大写:包的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类.以便看了包名就明白是哪个模块,从而直接到对应包里找相应的实现. 由 ...
- 不能链接云服务器mysql
如果报host'' 不允许连接MySQL服务器 1130 错误的话如果你的3306端口打开了,也把user 里的host改为% 还是不行的话,请记得更改 站点域名设置,和你服务器相同,端口一致.
- aspnet_isapi.dll设置图文介绍.net的程序实现伪静态
用URLRewriter控件 ①:首先要有这个文件URLRewriter.dll,如果没有,赶快到网上下载一个,并将其放到下面的bin目录里面,并且将其引用添加到下面里面; ②:下面就是Web.Con ...
- Chrome必备的扩展
Devtools Terminal ——浏览器终端.牛逼的不得了! LiveReload——为官方 LiveReload 应用程序(Mac 和 Windows)和第三方,例如 guard-livere ...
- 字符串混淆技术应用 设计一个字符串混淆程序 可混淆.NET程序集中的字符串
关于字符串的研究,目前已经有两篇. 原理篇:字符串混淆技术在.NET程序保护中的应用及如何解密被混淆的字符串 实践篇:字符串反混淆实战 Dotfuscator 4.9 字符串加密技术应对策略 今天来 ...
- 对改善ABP的一些建议
园子里有不少同学对ABP框架很感兴趣,而且也已经将ABP用在了商用项目中,有些可能还在操练阶段.一般来说,我们使用ABP默认的一些功能已经足够了,但还是有很多人想要自己拓展一些功能而自己实现不了或者说 ...
- 每周一书《Oracle 12 c PL(SQL)程序设计终极指南》
本周为大家送出的书是<Oracle 12 c PL(SQL)程序设计终极指南>,此书由机械工业出版社出版, 孙风栋,王澜,郭晓惠 著. 内容简介: <Oracle 12c PL/SQ ...