软件工程——关于对一段小程序的心得和修改

软件工程综合实践专题 第一次作业

代码来源:https://zhidao.baidu.com/question/541801532.html

代码功能:输入全班同学某门课成绩,计算平均分并统计大于等于平均成绩的学生人数。

测试环境:VS2017

源代码:

 

 

测试结果:

 

 

 (1)问题

  1. 对输入的成绩没有约束,可能会输入不切实际的数据。
  2. 运行时没有提醒来引导用户进行什么操作,(应该有如:正在输入第n个学生的成绩、已停止输入、已输入n个同学的成绩等)。
  3. 程序有不合适的回应,当没有有效成绩输入时(即第一个成绩就输入-1),全班平均分的输出会给出不恰当的回应 (此时count=0,不能当作除数)

 

(2)解决

 

以上是修改后的代码,以下是运行结果

  1. 正常输入和输入超过100时的结果:

 

 

  1. 第一个输入就满足退出条件时

 

(3)总结

  在(2)中的修改已解决(1)中提到的问题,包括对输入的约束,输入时有合适的提醒来引导用户使用,在非正常输入时程序也能有合适的回应。但是在修改后,输入数据的约束和退出条件的设计上仍有缺陷:输入的退出条件是输入未负数时结束输入,但是负数在当前的问题背景下也是无效数据,却没有和同样是无效数据的“输入成绩大于100时”有相同的处理,在”输入成绩大于100时”,会继续让用户输入直到输入的数据有效为止(即非负并且<=100)。这一点还需要我继续寻找更好的解决方法。

posted @ 2019-03-05 21:07  PinaColada!  阅读(202)  评论(0编辑  收藏  举报