20182319 2019-2020-1 《数据结构与面向对象程序设计》实验二报告
课程:《程序设计与数据结构》
班级: 1823
姓名: 彭淼迪
学号:20182319
实验教师:王志强
实验日期:2019年9月16日
必修/选修: 必修
1.实验内容
(1) 编写简单的计算器,完成加减乘除模运算。
(2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出。
(3) 编写测试代码,用规定方法测试验证。
2. 实验过程及结果
在这一次的实验中,我是走了一定弯路的,开始的时候没有正确理解测试代码的意义,直接把计算过程包含在了主函数中,结果导致看那个测试看得我一头雾水,最后在学姐的帮助下才搞明白。
(1)首先,创建一个创建两个(或者三个,这个看你心情,如果想把判断程序也分出来的话,就用三个)java程序,然后分析一下这两个程序的用途,其中一个是主类用来输入输出,并做判断,一个是被调用的类用来计算。
(2)然后,在主类的那个java程序中使用输入输出并调用你的计算类,写下你的判断类,在计算函数中写下计算函数(这里有一个地方要注意的是可以先写计算类,然后再写主类)。
(3)最后运行函数,截屏,交作业。
3. 实验过程中遇到的问题和解决过程
- 问题1:原本看到书上有nextInt和nestLine,于是想当然的以为一定有nextChar,然后一运行就立马报错(
光速打脸) - 问题1解决方案:发现原来这里面是没有nextChar这个东西的,
还是太嫩了,所以在网上找了几个方法,最后决定用先录一个字符串,再取字符串首字母的方法。 - 问题2:发现它老是给我报地址越界的错误,它怎么报的错了,反正经过仔细比对之后发现是地址越界了
- 问题解决方案:开始的时候以为是函数用错了,但后来发现是switch后容易越界,于是就模仿老师多写了一行输入,就成功解决了。
其他(感悟、思考等)
这一次的实验让我对调用类有了进一步的了解,可以更加熟练地使用类,然后也发现了一些以前的知识误区,让我也明白做事情不能想当然,碰到一些不确定的事还是应该先用一下jdk_api查一下,这样才不会闹乌龙,搞了好久才发现原理有问题。