zoukankan      html  css  js  c++  java
  • 实验2报告

    20182320 2019-2020-1 《数据结构与面向对象程序设计》实验2报告

    课程:《程序设计与数据结构》

    班级: 1823

    姓名: 郑力元

    学号:20182320

    实验教师:王志强

    实验日期:2019年9月17日
    必修/选修: 必修

    1.实验内容

    (1) 编写简单的计算器,完成加减乘除模运算。

    (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出。

    (3) 编写测试代码,测试验证。(https://www.cnblogs.com/rocedu/p/4472842.html)

    2. 实验过程及结果

    第一步:创建文件

    • 和日常一样,创建bin和src文件夹:

    • src里面创建有三个.java文件,我这里分别命名为calculator、Calculator和Test,他们分别用于编写计算器的方法、编写主方法和测试:

    第二步:编写代码

    • 我们首先编写具有计算器功能的子函数代码,代码如下:

      这个子函数需要接收来自主函数的传参,参数的类型为图中画横线的括号内的内容。

    其次,这个函数使用了switch语句,用于检测用户需要进行什么类型的运算(+-*/).

    • 其次,我们编写主函数,其代码如下:

      主函数主要负责执行对计算器函数的调用、实现接受用户输入的数字和符号和程序最后的循环功能。

    • 最后我们编写测试文件,测试具有计算器功能的子函数是否能正常实现功能。代码如下:

    第三步:编译运行

    • 主函数的运行结果如下:

      功能正常。

    第四步:测试

    • 运行测试程序结果如下:

      测试通过。

    3. 实验过程中遇到的问题和解决过程

    • 问题1:

    在Java中使用for()语句,和在C中不同。若如下使用,会报错:

    • 问题1解决方案:

    显然,报错提示应将“1”替换成布尔类型的值,而间接说明Java中的布尔类型的值并不简单以“1”和“0”表示。

    因此,我们将“1”去掉,程序会默认执行循环,功能类似于C语言中的for(;1;)语句。

    • 问题2:

    在编写最后是否需要循环的语句时,我如下编写,能顺利通过编译,但是在运行时却不能实现循环功能:


    并且这段语句我认为是符合逻辑,至少很符合C语言的逻辑的。

    • 问题2解决方案:

    将上面的检测循环代码修改为如下:

    功能就能正常实现了

    其他(感悟、思考等)

    Java和C语言虽然有许多共通的逻辑和语法,但是在一些特殊情况下,他们还是有略微不同。若将Java和C语言对比着学习,就需要注意这些不同之处,避免因为陷入其中一方的逻辑而找不出程序的错误。

    参考资料

  • 相关阅读:
    LinkedList的使用方法
    规范HTML页面
    HTML总结(一)
    HTML标签学习总结
    java---线程池的使用
    java对excel表格的操作
    java对cookie及Session的操作
    硬盘分区工具gparted使用
    镜像, 转置, 锐化, 灰度,旋转
    ffmpeg解码
  • 原文地址:https://www.cnblogs.com/leonzheng/p/11567731.html
Copyright © 2011-2022 走看看