第四次博客作业-结对项目

风格不统一 提交于 2019-12-02 03:30:34

任务一:在 学习通上注明结对的成员 格式: 班级姓名-----班级姓名
学习通标注:马洪涛(成员1)-----刘育玮(成员2)
任务二:
(1)提供你的结对成员的博客链接地址
马洪涛的博客链接地址:https://www.cnblogs.com/mhtyeye/
(2)结对成员对四则运算项目进行代码互审,并给出代码审查结果表
刘育玮的代码审查表(由马洪涛完成)


(3)选取其中一个成员的项目为基础,进行结对编程。结对项目撰写的博客要求:(30分)
选取马洪涛的项目为基础,进行结对编程,完成(a)、(b)、(c)要求
(a)结合课堂讲授内容,制订一份2人共同遵守的代码编写基本规范(至少包括注释规范与变量命名规范)。
C语言 程序代码编写规范
1 代码书写规范
1.1函数定义
每个函数的定义和说明应该从第1列开始书写。函数名(包括参数表)和函数体的花括号(“{”和“}”)应该各占一行。在函数体结尾的括号(“}”)后面应该加上注释,注释中应该包括函数名,这样比较方便进行括号配对检查,也可以清晰地看出来函数是否结束。
1.2空格的使用
使用空格分割所有演算符号和操作数。 这条规则的例外是“->”,““.”, “()”和“[]”,这些操作符和操作数之间不空格。 当需要把一个程序行的内容分成几行写时,操作符号应该放在行末,而不是下一行的开头。
1.3缩进的设置
代码书写应该遵从结构化的要求,采用缩进的格式。最小缩进量为4个空格,整个文件内部应该统一,不要混用Tab键和4个空格这两种情况,因为不同的编辑器对Tab键的处理方法不同。
1.4折行的使用
每行的长度不要超过80个字符,当程序行太长时,应该分行书写。 • 分行时应该按照自然的逻辑关系进行,例如:不要把一个简单的逻辑判断写在两行上。 分行后的缩进应该按照程序的逻辑关系进行对齐。例如:参数表折行后,下面的行应该在参数表左括号的下方。
1.5嵌套语句(语句块)的格式
对于嵌套式的语句--即语句块(如,if、while、switch等)应该包括在花括号中。花括号的左括号应该单独占一行,并与关键字对齐。建议即使语句块中只有一条语句,也应该使用花括号包括,这样可以使程序结构更清晰,也可以避免出错。建议对比较长的块,在末尾的花括号后加上注释以表明该语言块结束。
2 注释书写规范
注释必须做到清晰,准确地描述内容。对于程序中复杂的部分必须有注释加以说明。注释量要适中,过多或过少都易导致阅读困难。
2.1注释风格
C语言中使用一组(/* … */)作为注释界定符。注释内容尽量用英语方式表述。注释应该出现在要说明的内容之前,而不应该出现在其后。 除了说明变量的用途和语言块末尾使用的注释,尽量不使用行末的注释方式。
2.2何时需要注释
如果变量的名字不能完全说明其用途,应该使用注释加以说明。 如果为了提高性能而使某些代码变得难懂,应该使用注释加以说明。对于一个比较长的程序段落,应该加注释予以说明。如果设计文档中有流程图,则程序中对应的位置应该加注释予以说明。如果程序中使用了某个复杂的算法,建议注明其出处。如果在调试中发现某段落容易出现错误,应该注明。
3 命名规范
3.1常量、变量命名
用#define定义的符号常量全部采用大写。变量命名的基本原则: 可以选择有意义的英文(小写字母)组成变量名,使人看到该变量就能大致清楚其含义。 不要使用人名、地名和汉语拼音。如果使用缩写,应该使用那些约定俗成的,而不是自己编造的。多个单词组成的变量名,每个单词的首字母应该大写。如:dwUserInputValue。
3.2函数命名
函数命名原则与变量命名原则基本相同。对于初学者,函数命名可以采用“FunctionName”的形式。
(b)描述结对编程的感受。
1.发挥”双剑合璧”的威力
俗话说”三个臭皮匠,胜过一个诸葛亮”,大家在做同一件事时,集思广义发挥各自优点,可以使我分析更能切中要害。另外一个人发现我们这些具体的算法类有一些公用行为,于是考虑用抽象类代替原来的接口作为抽象行为层,这样可以把那些公用行为上移到抽象层,大大减少了冗余代码,使设计变得更加优雅。
2.沟通各自意见,需要时间
两个人一起编程难免出现意见不一致的现象,出现这种情况我们采取的方式是停止手头的工作,直到讨论清楚得出结论为止,有时候我们这样的讨论可能持续时间比较长,会影响到我们的生产力。
(c)结对场景照片

(4)结对项目编程要求:(40分)

  对结对项目首先完成代码规范和设计规范的修改,其次完成项目增加的需求,最后将完成的项目提交到github上,给出github的连接地址,可以给出简单的设计说明。

https://github.com/Lyweiii/-/blob/master/%E5%9B%9B%E5%88%99.cpp

  增加的需求:(a)考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。

                    (b)增大算式生成数的范围(如整数存不下的数),程序如何处理。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!