diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index 77618feda20618483b32e1b0d85b94eda6124bb6..4125c7d6c997798f9f8e91c41d5c47e6ce77fc91 100644 Binary files a/.vs/slnx.sqlite and b/.vs/slnx.sqlite differ diff --git "a/.vs/\344\275\234\344\270\232commit/v16/.suo" "b/.vs/\344\275\234\344\270\232commit/v16/.suo" index 65852764e510540be0b61029536830034ab3e61e..5d0143bb0f163f6e185354b24618c5ac3d21dd0b 100644 Binary files "a/.vs/\344\275\234\344\270\232commit/v16/.suo" and "b/.vs/\344\275\234\344\270\232commit/v16/.suo" differ diff --git "a/.vs/\344\275\234\344\270\232commit/v16/Browse.VC.db" "b/.vs/\344\275\234\344\270\232commit/v16/Browse.VC.db" index f9cf1ab087a342cd67b111febd80add15715bc9b..4cb713f42cb4313920d21ace1e629c16e6dcbdfe 100644 Binary files "a/.vs/\344\275\234\344\270\232commit/v16/Browse.VC.db" and "b/.vs/\344\275\234\344\270\232commit/v16/Browse.VC.db" differ diff --git a/221900107/README.md b/221900107/README.md index e08561175dedffbfd886112082d4ac43af70fc34..37caa1f2179bf03201f50f8eb5eda5a6405ca9a8 100644 --- a/221900107/README.md +++ b/221900107/README.md @@ -1,6 +1,9 @@ -项目:OlympicSearch -运行:使用控制台cmd运行,将input.txt放入与OlympicSearch.exe同一目录下,并在src文件夹下新建文件夹data用以保存数据Json文件,在控制台输入OlympicSearch.exe input.txt output.txt后就会运行出结果,结果output.txt保存在与当前exe文件同一目录下 -功能简介:读取input.txt的指令后从data文件夹下的数据json文件中读取相应的输出,最后输出到output.txt +项目:OlympicSearch + +运行:使用控制台cmd运行,将input.txt放入与OlympicSearch.exe同一目录下,并在src文件夹下新建文件夹data用以保存数据Json文件,在控制台输入OlympicSearch.exe input.txt output.txt后就会运行出结果,结果output.txt保存在与当前exe文件同一目录下 + +功能简介:读取input.txt的指令后从data文件夹下的数据json文件中读取相应的输出,最后输出到output.txt + > 指令total 则输出奖牌总榜 @@ -8,5 +11,6 @@ 其他错误指令则输出"ERROR" -作业链接:[软件工程实践第二次作业——个人实战](https://bbs.csdn.net/topics/604903684) -博客链接: \ No newline at end of file +作业链接:[软件工程实践第二次作业——个人实战](https://bbs.csdn.net/topics/604903684) + +博客链接: diff --git a/221900107/codestyle.md b/221900107/codestyle.md index 349af3cf0d32f979b78b4c889c680c0e38e7b048..762d7d5ae4c4f14985860e65b91432eba311fae2 100644 --- a/221900107/codestyle.md +++ b/221900107/codestyle.md @@ -1,37 +1,63 @@ # 一、标识符命名 -<1>函数名采用驼峰法命名。 -<2>局部变量,for循环等简单操作所需变量一般用i,j,k等单字母来进行操作, -例如:某个函数中需要循环的操作就for(int i=0;i全局变量(一般不用)、枚举、常量用一般下划线分隔法命名而且一般采用全大写字母来表示。 -例如:学生学号当作常量定义就用STUDENT_NUMBER,最大年份就用MAX_YEAR来定义 -<4>对于标识符长度规定,没有特殊的规定,标识符的长度与作用域无关,标识符的长度取决于命名时英语单词的长度,对于一个标识符命名时一般最多不超过三个单词 ,有时会采用单词的缩写 -<5>对于结构体类型命名时,如果编程只需要一个结构体的话,一般用一个单词命名,例如List,Node等,头指针就命名为head。编程需要两个或以上则采用驼峰法命名,头指针就为用驼峰法将缩写的结构体类型名加上head。例如结构体类型名为firstNode等,那么头指针就命名为fNhead等 -<6>对于链表指针变量或无特殊作用的普通指针的命名一般为p,t,q,pr等简单字母命名,其他具有特殊作用或特殊含义的指针命名用驼峰法命名,例如链表的头指针等 -<7>对于类的命名一般采用描述性的单词,驼峰法命名 -<8>不允许用拼音命名,绝不能出现诸如素数命名为sushu的情况,对变量的命名一般采用的是描述性的单词,即便是不会单词也绝不用拼音,可以采取多种方式,例如上网查询 + <1>函数名采用驼峰法命名。 + + <2>局部变量,for循环等简单操作所需变量一般用i,j,k等单字母来进行操作, +例如:某个函数中需要循环的操作就for(int i=0;i全局变量(一般不用)、枚举、常量用一般下划线分隔法命名而且一般采用全大写字母来表示。 + +例如:学生学号当作常量定义就用STUDENT_NUMBER,最大年份就用MAX_YEAR来定义 + +<4>对于标识符长度规定,没有特殊的规定,标识符的长度与作用域无关,标识符的长度取决于命名时英语单词的长度,对于一个标识符命名时一般最多不超过三个单词 ,有时会采用单词的缩写 + +<5>对于结构体类型命名时,如果编程只需要一个结构体的话,一般用一个单词命名,例如List,Node等,头指针就命名为head。编程需要两个或以上则采用驼峰法命名,头指针就为用驼峰法将缩写的结构体类型名加上head。例如结构体类型名为firstNode等,那么头指针就命名为fNhead等 + +<6>对于链表指针变量或无特殊作用的普通指针的命名一般为p,t,q,pr等简单字母命名,其他具有特殊作用或特殊含义的指针命名用驼峰法命名,例如链表的头指针等 + +<7>对于类的命名一般采用描述性的单词,驼峰法命名 + +<8>不允许用拼音命名,绝不能出现诸如素数命名为sushu的情况,对变量的命名一般采用的是描述性的单词,即便是不会单词也绝不用拼音,可以采取多种方式,例如上网查询 + # 二、常量定义 -<1>除0和1以为的常量一般不允许直接使用数值,要求用const或enum或#define等定义常量,变量名一般全大写 -例如:#define MAX_DAY 31,#define PI 3.14之类的 -<2>但如果是某些仅出现一次或两次的简单常量 +<1>除0和1以为的常量一般不允许直接使用数值,要求用const或enum或#define等定义常量,变量名一般全大写 + +例如:#define MAX_DAY 31,#define PI 3.14之类的 + +<2>但如果是某些仅出现一次或两次的简单常量 + 例如:判断闰年的时候所需要的4、100以及400等数据可以直接用,就比如 -`if(((year%4==0)&&(year%100!=0))||(year%400==0))`之类等 -<3>一般不使用神秘的数值,就算有,也要有注释在旁边 +`if(((year%4==0)&&(year%100!=0))||(year%400==0))`之类等 + +<3>一般不使用神秘的数值,就算有,也要有注释在旁边 + # 三、缩进格式 -<1>缩进的字符数为4,一般不采用8个字符数的缩进 -<2>每行不超过80列,必须在逻辑分割点折行,折行内容尽量对齐。 +<1>缩进的字符数为4,一般不采用8个字符数的缩进 + +<2>每行不超过80列,必须在逻辑分割点折行,折行内容尽量对齐。 + # 四、大括号位置 -<1>左括号和右括号都放在行首且自成一行与上一条语句对齐 -<2>如果if/while/for等只有一条执行语句时,也需要用大括号 +<1>左括号和右括号都放在行首且自成一行与上一条语句对齐 + +<2>如果if/while/for等只有一条执行语句时,也需要用大括号 + # 五、函数 -<1>函数名采用简单具有描述性的英文单词组合 -<2>每个函数只做一件简单的事,即只具备一个作用,而作用要和函数名相对应 -<3>函数中的局部变量不超过7个,简单的操作的变量用单字母表示,有特殊意义的变量采用驼峰法表示 +<1>函数名采用简单具有描述性的英文单词组合 + +<2>每个函数只做一件简单的事,即只具备一个作用,而作用要和函数名相对应 + +<3>函数中的局部变量不超过7个,简单的操作的变量用单字母表示,有特殊意义的变量采用驼峰法表示 + # 六、注释 -<1>对于函数的注释写在函数前,程序头部的注释写在主文件的最前面 -<2>程序头部的注释包括该模块的作用、有关事项、修改时间以及作者等 -例如 +<1>对于函数的注释写在函数前,程序头部的注释写在主文件的最前面 + +<2>程序头部的注释包括该模块的作用、有关事项、修改时间以及作者等 + +例如 + ```cpp //作用: @@ -39,25 +65,37 @@ //有关事项: //修改时间: ``` -<3>函数头部的注释包括功能、入口参数、返回值等 -例如 +<3>函数头部的注释包括功能、入口参数、返回值等 + +例如 ```cpp //入口: //返回值: //功能: ``` -<4>程序块的注释包括功能,注意事项等 -<5>函数内的注释尽量少,如果有,一般就在需要注释的语句后用//来注释(不需要换行再加注释) -<6>注释一般简单明了,如果发现注释过于复杂或一个函数中有过多的注释语句的话,就考虑简化一下代码,比如将一个函数拆成两个,再加注释 -<7>注释一般用// +<4>程序块的注释包括功能,注意事项等 + +<5>函数内的注释尽量少,如果有,一般就在需要注释的语句后用//来注释(不需要换行再加注释) + +<6>注释一般简单明了,如果发现注释过于复杂或一个函数中有过多的注释语句的话,就考虑简化一下代码,比如将一个函数拆成两个,再加注释 + +<7>注释一般用// + # 七、空格与空行 -<1>加空行 -两个函数的定义之间。 -定义常量时,相同类型或操作的常量放在一起不加空行,不同的之间加空行 -<2>加空格 - #include和<之间加空格,if/while/for等和(加空格,函数命名时函数名和(中间不用加空格等,其他一般不加空格 -<3>赋值、移位等运算符与变量之间需要加空格 -<4>除以上之外,有时可以为了排版的美观之类等要求时可以适当加空格和空行 +<1>加空行 + +两个函数的定义之间。 + +定义常量时,相同类型或操作的常量放在一起不加空行,不同的之间加空行 + +<2>加空格 + + #include和<之间加空格,if/while/for等和(加空格,函数命名时函数名和(中间不用加空格等,其他一般不加空格 + +<3>赋值、移位等运算符与变量之间需要加空格 + +<4>除以上之外,有时可以为了排版的美观之类等要求时可以适当加空格和空行 + # 八、总结 -以上是我作为初学者的个人编程风格习惯,在面对一般个人的代码工程时采用自己习惯,当遇上团队小组项目时,尽量调整自己的习惯去适应团队的要求 \ No newline at end of file +以上是我作为初学者的个人编程风格习惯,在面对一般个人的代码工程时采用自己习惯,当遇上团队小组项目时,尽量调整自己的习惯去适应团队的要求