#個人博客作業week2——結對編程伙伴代碼復審

General

  1.程序能夠順利地運行。程序通過命令行輸入,能夠向對應的文件中輸出符合要求的題目和答案。程序能夠根據用戶的不同選擇,進行題目的生產或答案的校驗,生成出的題目符合參數要求和項目的查重等各種要求,答案校驗準確迅速。

  2.代碼邏輯清晰,沒有令人難以理解的部分。

  3.他的編碼風格與我相似,大括號的使用讓我能很清楚地劃分模塊。變量名很函數名的命名做到了”望文生義“。

  4.閱讀過程中沒有發現冗余重復多余的代碼,項目中沒有任何一個部分注釋掉代碼。

  5.代碼模塊化十分清晰,主要分為了表達式,分數和計算模塊,定義在頭文件中,整個項目看上去結構十分清晰。

  6.循環的退出條件合理,沒有發現數組越界的情況。

  7.一些重要的邏輯部分缺少必要的注釋,自己需要仔細閱讀才看能把握,希望能在一些重要的邏輯部分加上一些幫助理解的注釋。

?

Security

  1.對于命令行輸入的格式檢查完整。測試-n的參數小于等于0,或者-r的參數小于等于0的特殊情況時輸出”command is not correct!“;測試cmd數據不合法的特殊情況時輸出”command is not correct!“。

  2.函數普遍沒有檢查是否為合法輸入。不過在函數調用的部分都輸入了合法的輸入,所以沒有出現異常。

  3.無效的輸出值會輸出”command is not correct!“。

?

Documentation

  1.缺少對程序的整體說明和解釋,是伙伴口頭解釋給我聽。

  2.部分代碼有注釋但整體不完整,我認為的一些邏輯較為復雜的部分需要添加利于讓人讀懂和維護的注釋。

  3.數據結構的命名”望文生義“,但是建議最好還是需要添加一些解釋注釋,部分重要的變量缺少注釋會讓人難以理解。

  4.沒有檢查出不完整的代碼。

?

Testing

  1. 沒有使用unit test進行正確性測試。
  2. 但作者記錄了如下的人工測試日志:

  1.測試速度,是否能生成超過10000的題,表示形式是否正確,是否出現超過3個運算符的算式
  (1)輸入:Myapp.exe -n 10000 -r 10
  測試:看Exercises.txt, Answers.txt是否有10000項;看Exercise.txt中算式是否符合要求;看Answers.txt是否正確形式的答案
  (2)輸入:Myapp.exe -e Exercises.txt -a Answers.txt
  測試:看Grade.txt的Correct項是否包含所有的序號,Wrong項包含的0個序號


  2.測試-n的參數小于等于0,或者-r的參數小于等于0的特殊情況
  (1)輸入:Myapp.exe -n 0 -r 10
  輸出:“command is not correct!”
  (2)輸入:Myapp.exe -n -5 -r 10
  輸出:“command is not correct!”
  (3)輸入:Myapp.exe -n 10 -r 0
  輸出:“command is not correct!”
  (4)輸入:Myapp.exe -n 10 -r -5
  輸出:“command is not correct!”


  3.測試是否產生相同的題目,是否有運算式中間產生負數,測試-n,-r調換順序的情況
  (1)輸入:Myapp.exe -n 100 -r 10
  測試:看這100個運算式是否存在相同的題目,當然也要看中間是否產生了負數的算式
  (2)輸入:Myapp.exe -r 10 -n 100
  測試:首先看這是否能生成符合形式的算式和答案,再看這100個運算式是否存在相同的題目,當然也要看中間是否產生了負數的算式


  4.測試是否能夠正確地判斷答案是否正確。
  (1)對于評測的輸入問題,我們要求的是輸入的題目和答案都是從1開始順序編號的,不能缺也不能多;否則,請提示輸入有錯誤。
  (2)由于我們的題目都是按規范生成的,為簡單起見,可以認為輸入的題目都是按照順序編號的符合規范的題目。
  (3)(但是答案缺少的話請報錯并給出提示。)我把這一條忽略,如果缺少的話就算它是錯的。
  (4)所有題號必須是按照順序遞增的,而且題數一致。
  為了比較這個,我把有10算式的正確答案中的部分改錯,刪掉其中一個答案(題號不刪除),最后得到的答案符合要求。


  5.為了符合題目要求,我需要測試cmd數據不對的情況。
  (1)輸入:Myapp.exe -n 10
  輸出:“command is not correct!”
  (2)輸入:Myapp.exe -n 10 -e Exercises.txt
  輸出:“command is not correct!”

轉載于:https://www.cnblogs.com/FUduomi/p/4847538.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458807.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458807.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458807.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux設備驅動程序(第三版)/深入理解計算機系統(原書第2版)/[Android系統原理及開發要點詳解].(韓超,梁泉)百度云盤下載

文檔下載云盤連接:http://pan.baidu.com/s/1dDD2sgT 更多其他資料,請關注淘寶:http://shop115376623.taobao.com/ http://item.taobao.com/item.htm?spma230r.1.14.3.ArS64K&id43025290175&ns1&abbucket2&_uk10ekfuf6187#d…

個人用戶上網需要有計算機電話線,個人用戶上網需要有計算機、電話線、用戶賬號和口令,以及______。...

_條形碼按照使用目的可分為()、()和()。簡述市場定位的步驟。植物、真菌、藻類和原核細胞的細胞外基質是用糞便隱血試驗鑒別消化道良性與惡性腫瘤所致的出血,有價值的是從長期來看,在紙幣制度下或紙幣本位下,( )是決定匯率的基礎。最常引起肺心病的疾病是從長期來看…

Xcode 5.1 編譯模擬器以及真機都能使用的靜態庫

Xcode 5.1.dmg 下載地址 http://pan.baidu.com/s/1jGJpKm6 1.新建 Framework & Library 工程 我起名叫ShowInfo,下面為其源碼 showInfo.h #import <Foundation/Foundation.h> interface ShowInfo : NSObject (void)showInfo; end showInfo.m #import "ShowI…

UVALive 6511 Term Project

Term Project Time Limit: 3000msMemory Limit: 131072KBThis problem will be judged on UVALive. Original ID: 651164-bit integer IO format: %lld Java class name: Main解題&#xff1a;強連通分量 1 #include <bits/stdc.h>2 using namespace std;3 const in…

MATLAB混合編程視頻教程下載 SIMULINK系統仿真視頻

下載鏈接&#xff1a; http://item.taobao.com/item.htm?id43401674106 精通MATLAB混合編程視頻講解 MATLAB各類函數視頻講解 基于MATLAB的高等數學問題求解 MATLAB函數速查視頻講解 面向對象C視頻教程 五朵金花&#xff0c;帶你輕松搞定MATLAB 金花詳情&#xff1a; 精通MA…

css z-index

為什么80%的碼農都做不了架構師&#xff1f;>>> css z-index 最近在發現z-index在position"relative"的元素中會失效 去掉position屬性就正常&#xff1a;z-index1 出現在 z-index999之上 記錄一下供以后查看 轉載于:https://my.oschina.net/livend/blog…

用c++寫的一個詞典工具

使用的QT圖形界面&#xff0c;用libcurl獲取的網頁&#xff0c;在之中遇見了很多問題&#xff0c;一直想用c類封裝一下libcurl,發現c很不到家啊。索性用了友元函數。 先貼上代碼吧 main.cpp #include <stdio.h> #include <stdlib.h> #include <unistd.h>#in…

VC++中Format用法

Format是一個很常用&#xff0c;卻又似乎很煩的方法&#xff0c;本人試圖對這個方法的幫助進行一些翻譯&#xff0c;讓它有一個完整的概貌&#xff0c;以供大家查詢之用&#xff1a;首先看它的聲明&#xff1a;function Format(const Format: string; const Args: array of con…

為什么NX10幫助功能無法找到HTML,NX10.0 新功能介紹視頻教程專輯

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓NX10.0 新功能介紹視頻教程專輯PLM之家NX10.0界面基礎新功能--1 NX新界面增強.mp4PLM之家NX10.0界面基礎新功能--2 問題管理功能增強.mp4PLM之家NX10.0界面基礎新功能--3 資源工具條開發API接口.mp4PLM之家NX10.0界面基礎新功能--4…

SVN,桌面右擊-settings-Icon Overlays 選擇 None

SVN&#xff0c;桌面右擊->settings->Icon Overlays 選擇 None 轉載于:https://www.cnblogs.com/yu520zhong/p/4857324.html

模擬實現strstr

今天我們來模擬實現strstr這個函數&#xff0c;首先我們先來了解一下這個函數&#xff0c;這個函數原型為char *strstr(char *str1,char *str2)&#xff0c;功能是&#xff1a;從字符串str1中查找是否有符串str2&#xff0c;若str2是str1的子串&#xff0c;則先確定str2在str1的…

股票歷史數據的獲取

從 Yahoo 獲取 歷史數據 HTML Output: http://finance.yahoo.com/q/hp?s300072.sz&d7&e23&f2010&a5&b11&c2010CSV Output: http://ichart.finance.yahoo.com/table.csv?s300072.sz&d7&e23&f2010&a5&b11&c2010由于歷史原因…

html5證書,1+X證書Web前端開發HTML專項練習

1 . HTML5 之前的 HTML 版本是&#xff1f; A.HTML 4.01 B.HTML 4 C.HTML 4.1 D.HTML 4.9 2 . HTML5 的正確 doctype 是&#xff1f; A.B.C.3 . 在 HTML5 中&#xff0c;哪個元素用于組合標題元素&#xff1f;A.B.C.D.4 . HTML5 中不再支持下面哪個元素&#xff1f;A.B.C.D.5 .…

PHP中封裝mysql數據庫鏈接(簡單版)

為什么80%的碼農都做不了架構師&#xff1f;>>> 1&#xff0c;封裝mysql數據鏈接需要哪些屬性 主機地址&#xff0c;數據庫名&#xff0c;數據庫密碼&#xff0c;數據庫名&#xff0c;字符集 2&#xff0c;利用構造方法在實例化類時&#xff0c;php底層會自動執行的…

c++異常處理機制

c異常處理機制 C異常處理機制是一個用來有效地處理運行錯誤的非常強大且靈活的工具&#xff0c;它提供了更多的彈性、安全性和穩固性&#xff0c;克服了傳統方法所帶來的問題. 異常的拋出和處理主要使用了以下三個關鍵字&#xff1a; try、 throw 、 catch 。 拋出異常即檢測…

html標簽api,html5新增標簽+API介紹

新增標簽1、embedembed標簽是html5新增的標簽&#xff0c;用來嵌入內容&#xff0c;比如插件等&#xff0c;常用于視頻文件的播放(為外部應用程序定義容器)。這篇文章介紹了embed的常用屬性&#xff0c;基本都是定義播放器的一些設置的&#xff0c;自動播放loop、開始時間start…

UVA10404

1 //題意&#xff1a;S 和 O 二人玩游戲 。N顆石頭&#xff0c;M個數&#xff0c;每次拿 M[i]個石頭&#xff08;i>0 && i<m) ,誰拿到最后一個誰贏。 2 3 // 定義f[i]為還剩i顆石頭時的勝負情況 &#xff0c;若S勝利&#xff0c;則記 1 &#xff0c;4 #include&…

java中定義一個CloneUtil 工具類

其實所有的java對象都可以具備克隆能力&#xff0c;只是因為在基礎類Object中被設定成了一個保留方法&#xff08;protected),要想真正擁有克隆的能力&#xff0c; 就需要實現Cloneable接口&#xff0c;重寫clone方法。通過克隆方法得到的對象是一個本地的副本。 1、實現Clonea…

C++異常以及錯誤處理

計算機應用程序中離不開錯誤處理&#xff0c;尤其是生產型大型軟件系統。應用軟件系統運行屬于循環處理事務&#xff0c;出錯后需要保證不能讓軟件程序直接退出。這就需要使用一定的程序容錯處理來應對。一般情況下&#xff0c;大型軟件開發中的軟件系統容錯處理會結合異常處理…

家用臺式計算機的額定功率,臺式機的功率(臺式電腦電源功率多大才合適?)...

臺式機的功率(臺式電腦電源功率多大才合適&#xff1f;)組裝一臺電腦&#xff0c;我們需要先挑選好硬件&#xff0c;搭配硬件最關鍵點就是CPU和主板兼容性&#xff0c;硬件之間的均衡性、電源功率等&#xff0c;均需要考慮周到。那么臺式電腦電源功率多大才合適&#xff1f;下面…