20202306 实验二《Java基础(数据/表达式、判定/循环语句) 》实验报告
课程:《程序设计与数据结构》
班级: 2023
姓名: 李金城
学号:20202306
实验教师:王志强
实验日期:2021年9月25日
必修/选修: 必修
## 1.实验内容
(1) 编写简单的计算器,完成加减乘除模运算。
(2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出。
(3) 编写测试代码,测试验证。(https://www.cnblogs.com/rocedu/p/4472842.html)
## 2. 实验过程及结果
一、编写简单的计算器,完成加减乘除模运算
1、基础/底层代码
(1)构造类“Caculator“,使之具备基础计算器的功能。
(2)利用if循环,能向用户警告分母为0的错误情况。
2、操作代码
(1)使用新生成的类“Caculator”进行编程,设定三个变量:两个数字以及一个操作符。
(2)利用if语句,根据用户需要的算法,调用相关类进行计算。
(3)将其嵌套如一个do-while循环语句,根据用户输入的是否是Y/y(为方便用户输入,设置了忽略大小写),判断重复该过程或跳出。
3、试验模拟
试验情况顺利,编译成功!
## 3. 实验过程中遇到的问题和解决过程
- 问题1:进行do-while循环时,发现i(记录用户输入Y/y的字母的字符串变量)总是报错,并显示“未找到该类”。
- 问题1解决方案:用数字进行替换,将y用1表示,失败。查看参考书籍,询问学长未果。更改为非静态类,依旧报错。询问老师后,发现是String i(声明语句)在do-while循环内,导致每一次循环都将重复声明i。于是,将String i放置在循环以外,问题迎刃而解了。
- 问题2:调用类时,搜索不到该类。
- 问题2解决方案:将类与文件名统一。
## 其他(感悟、思考等)
Java的学习总有“柳暗花明又一村”的感觉,同样的操作要求也可以用多种操作执行,且要全方位的进行检查和纠错,程序的报错不代表错误就在于某一行某一词,而应该具备更全面的视野,将问题放到整个程序上看,才能有所突破和发现。学习的过程就是不断刷新思维的过程,不断积累经验,多编写代码,学习相关表达,更要严谨认真,才能收获新知。
## 参考资料
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...