面向对象程序设计第二次作业

面向对象程序设计作业2

Github 链接:https://github.com/luojingzhao/object-oriented

题目:

面向对象程序设计第二次作业_第1张图片

<1>第一次尝试

刚看到大题目“A+B",我首先想到的是简单的a+b的类型题。但认真看完题目发现没有那么简单。必须在输出的数的每三位加上逗号,这就需要划分为三种情况了。
首先我先在dev-c++上尝试进行:
代码:
面向对象程序设计第二次作业_第2张图片

少量的数据尝试发现好像无误,然而
运行结果:

测试结果为错误,仔细查看发现选择的语言没有选择为C语言。重新选择后,再次提交:
面向对象程序设计第二次作业_第3张图片

运行结果显示部分数据正确,说明没有考虑到所有的情况,再次在编译器上尝试数据发现:

小结

数据尝试发现出现严重的错误,只要有三位数都为0的话就会出错,无法显示全部的0。这是这次尝试代码出现的最大错误。我尝试将输出的“sum%1000改为(sum%1000)*1000-1000”,然而。。。并没有什么卵用。

<2>第二次尝试

在想不出如何修改后,考虑到用数组存储各个位的数字或者指针指向各个数输出的方法,重新进行了尝试。
代码:
面向对象程序设计第二次作业_第4张图片

将上次运行出错的数据代入测试,可行。
运行结果:

面向对象程序设计第二次作业_第5张图片

小结

运用取余的方法将计算出来的数全部寄存在数组中,然后再根据数的长短加上逗号,很好地解决了输出0的问题。

插叙:

在查看了老师在博客园上发的作业示范,发现自己在第一次尝试所犯的错误与示范所列的错误一样。示范中所写的代码是这样的:
面向对象程序设计第二次作业_第6张图片
但我对其中的“%03d”的输出方式不了解,于是我上百度查找了一下 http://blog.csdn.net/dongfengkuayue/article/details/21184511

总结:

1.太过于粗枝大叶,连提交界面还未看清就上交。
2.对于C语言的了解只有大概,没有深入,细节的东西掌握的不够全面。
3.问题的解法有多样性,不能拘泥于一种。

你可能感兴趣的:(面向对象程序设计第二次作业)