目录
1.分别用for和while循环计算1!+2!+…+10!的值。
2. 编写程序输出26个大写字母的ASCII对照表,程序运行参考结果如1-5所示。
3.编写Java程序,从键盘输入年份和月份,然后输出该月份的天数(考虑是否闰年)
4.请设计一个方法判断用户输入月份计算机出该月的天数,并进行测试
6.使用选择法(冒泡法、快速排序法、直接插入法)对数组排序,并进行测试
点击这里下载本文及所有实验代码合集,超实惠哟!
一、实验目的
1.掌握Java 开发环境的搭建,系统环境变量path、classpath的配置;
2.掌握Java 的运行机制;
3.掌握Java的基本语法格式,标识符的命名规范;
4.掌握Java语言中的常量与变量、变量的作用域;
5.掌握Java语言运算符与表达式的使用、运算符的优先级;
6.掌握Java程序的流程控制(即顺序结构、选择结构和循环结构)的使用。
7.掌握Java中方法的定义、重载与使用;
8.掌握 Java 数组的定义与遍历、求最值、排序等操作。
二、实验代码
1.分别用for和while循环计算1!+2!+…+10!的值。
package 作业练习.test1;
public class Exer01 {
public static void main(String[] args) {
// 用for循环实现1-10的阶乘之和!
int total_1 = 1;
double num_1 = 0;
// 设置循环,首先定义判断值,后面椒判断条件,最后是判断次数
for (int i = 1; i <= 10; i++) {
total_1 *= i;
num_1 += total_1;
}
System.out.println("1-10的阶乘之和为:" + num_1);
// 用while循环实现1-10的阶乘之和!
int i = 1;
int total = 1;
double num = 1;
while (i < 10) {
i++;
total *= i;
num += total;
}
System.out.println("1-10的阶乘之和为:" + num);
}
}
2. 编写程序输出26个大写字母的ASCII对照表,程序运行参考结果如1-5所示。
package 作业练习.test1;
public class Exer02 {
public static void main(String[] args) {
System.out.println("\t\t" + "大写字母的ASCLL对照表");
int n = 0;
for (int i = 65; i <= 90; i++) {
System.out.print((char) i + "\t");
System.out.print(i + "\t");
n++;
if (n % 5 == 0)
System.out.println();
}
}
}
3.编写Java程序,从键盘输入年份和月份,然后输出该月份的天数(考虑是否闰年)
package 作业练习.test1;
import java.util.Scanner;
public class Exer03 {
public static void main(String[] args) {
System.out.println("请输入年份:");
Scanner sc = new Scanner(System.in);
int year = sc.nextInt();
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
System.out.println("这是闰年!!");
} else {
System.out.println("这不是闰年!!");
}
}
}
4.请设计一个方法判断用户输入月份计算机出该月的天数,并进行测试
package 作业练习.test1;
import java.util.Scanner;
public class EXer04 {
public static void main(String[] args) {
// 实例化Scanner
Scanner scan = new Scanner(System.in);
// 提示用户输出月份
System.out.println("请输入月份:");
// 接收用户输入的月份
int month = scan.nextInt();
// 判断月份(注意break位置)
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println("31天");
break;
case 4:
case 6:
case 9:
case 11:
System.out.println("30天");
break;
case 2:
System.out.println("请输入对应年份:");
int year = scan.nextInt();
// 闰年判断
if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) {
System.out.println("29天");
} else {
System.out.println("28天");
}
break;
default:
System.out.println("请输入正确月份~");
break;
}
}
}
5.请设计一个方法输出实心的菱形,并进行测试
package 作业练习.test1;
public class Exer05 {
public static void main(String[] args) {
int n = 4;
//前4行.上半部分
for (int i = 1; i <= n; i++)//控制行数
{
for (int k = n - 1; k >= i; k--)//打印空格
{
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++)//打印*
{
System.out.print("*");
}
System.out.println();
}
//后3行,下半部分
for (int i = n - 1; i >= 1; i--) {
for (int k = i; k <= n - 1; k++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
6.使用选择法(冒泡法、快速排序法、直接插入法)对数组排序,并进行测试
package 作业练习.test1;
import java.util.Scanner;
public class Exer08 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int Max=0;
int[] score = new int[5]; //自定义数组长度
System.out.println("please input five numbers:");
for(int i=0; i< score.length; i++){
score[i] = input.nextInt();
}
for(int j=0; j<score.length-1; j++){
swap(score); //调用数组排序方法
}
System.out.println("########## the result: ###########");
for(int i=0; i<score.length; i++){
System.out.print(score[i]+"\t");
}
}
public static void swap(int[] arr){ //冒泡法排序
for(int i=0; i<arr.length-1; i++){
if(arr[i]>arr[i+1]){
int temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
}
}
7.九九乘法表打印
public class Exer01 {
/**
* 实现一个简单的乘法表
*/
public static void main(String[] args) {
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
{
System.out.print(j+"*"+i+"="+i*j+" ");
}
System.out.println("");//必须在第二个for循环之外
}
}
}
8.阶梯数组输出练习
package 作业练习.test1;
public class Exer07 {
public static void main(String[] args) {
int triangle[][]=new int[10][];// 创建二维数组
// 遍历二维数组的第一层
for (int i = 0; i < triangle.length; i++) {//控制行数,输出10行
triangle[i]=new int[i+1];// 初始化第二层数组的大小
// 遍历第二层数组
for(int j=0;j<=i;j++){//控制列数
// 将两侧的数组元素赋值为1
if(i==0||j==0||j==i){
triangle[i][j]=1;
}else{//其他数值通过公式计算
triangle[i][j]=triangle[i-1][j]+triangle[i-1][j-1];
}
System.out.print(triangle[i][j]+"\t");// 输出数组元素
}
System.out.println();//换行
}
}
}
9.求sin和cos值
package 作业练习.test1;
public class Exer06 {
private static double pi=3.141592658;
//定义一个求绝对值的方法
double myabs(double n){
if(n<0){
n*=(-1);
}
return n;
}
//求sin
double mysin(double x){
int i=1,sign=1;
double item=x,frac=0,fz=x,fm=1;
for(;myabs(item)>=10E-5;i+=2){
frac+=item;//累加
fz=fz*x*x;//分子
fm=fm*(i+1)*(i+2);//分母
sign=-sign;//符号
item=sign*(fz/fm);//临时变量
}
return (frac);
}
public static void main(String[] args){
Exer06 test = new Exer06();
System.out.println(test.mysin(0.25*pi));
}
}
三、实验补充
一、命名规范
1、 项目名全部小写
2、 包名全部小写
3、 类名、接口名首字母大写,如果类名、接口名由多个单词组成,每个单词的首字母都要大写。
如:public class MyFirstClass{}
4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。
如:int index=0;
public void toString(){}
5、 常量名全部大写
如:public static final String GAME_COLOR=”RED”;
6、所有命名规则必须遵循以下规则:
1)、名称只能由字母、数字、下划线、$符号组成
2)、不能以数字开头
3)、名称不能使用JAVA中的关键字。
4)、坚决不允许出现中文及拼音命名。
二、注释规范
1、 类注释
在每个类前面必须加上类注释,注释模板如下:
/**
* Copyright (C), 2006-2010, ChengDu Lovo info. Co., Ltd.
* FileName: Test.java
* 类的详细说明
*
* @author 类创建者姓名
* @Date 创建日期
* @version 1.00
*/
2、 属性注释
在每个属性前面必须加上属性注释,注释模板如下:
/** 提示信息 */
private String strMsg = null;
3、 方法注释
在每个方法前面必须加上方法注释,注释模板如下:
/**
* 类方法的详细使用说明
*
* @param 参数1 参数1的使用说明
* @return 返回结果的说明
* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明
*/
4、 构造方法注释
在每个构造方法前面必须加上注释,注释模板如下:
/**
* 构造方法的详细使用说明
*
* @param 参数1 参数1的使用说明
* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明
*/
5、 方法内部注释
在方法内部使用单行或者多行注释,该注释根据实际情况添加。
如://背景颜色
Color bgColor = Color.RED
每文一语
有时候遇见了错误,也要享受美丽的邂逅,尽力所为,不留遗憾才是正确的选择!
本文幸运色是浅蓝色哟!天空很大,可以任凭你飞跃!加油!