C++课程设计的问题,谁帮我注释翻译一下,急~~

2025-02-25 22:16:28
推荐回答(3个)
回答1:

稍微修改了一下。。并写了个不怎么好的主函数验证了一下。。。。
注释应经够全面的啦 。。。
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;

struct Employee
{//声明职工的结构作为链表节点。
//-----数据域-----
string m_Code;
string m_Name;
unsigned short int m_Year;
string m_Sex;
string m_Post;
string m_Department;
unsigned int m_Wage;
//链表节点的指针域---
struct Employee* Next;
};

//-----个人习惯:取别名-------
typedef struct Employee Node;
typedef Node* Link;
Link man;

//-------函数声明-------------
Link Create(Link Head);
void Release(Link Head);
Link Add(Link Head);
bool Search(Link Head);
Link Search_Unique(Link Head);
void Display_List(Link Head);
void Display_Node(Link pNode);
Link Modify(Link Head);
Link Del(Link Head);
void Save_ByFile(Link Head,fstream& ofile);
Link Sort(Link Head);
//-------函数实现--------------------------
Link Create(Link Head)
{//创建一个带头节点的空链表。
Head=(Link)new Node;
if(!Head)
{
cout<<"分配内存失败!"<return NULL;
}
Head->m_Code="";
Head->m_Name="";
Head->m_Year=0;
Head->m_Sex="";
Head->m_Post="";
Head->m_Department="";
Head->m_Wage=0;
Head->Next=NULL;

return Head;
}

void Release(Link Head)
{//释放链表。
Link ptr;//声明一个操作用的指针。
while(Head!=NULL)
{
ptr=Head;
Head=Head->Next;
delete ptr;//释放节点资源。
}
}

Link Add(Link Head)
{//前插法添加数据。
Link pNew;// 声明一个新节点。
char again;
string code,name,sex,post,department;
unsigned short int year;
unsigned int wage;
do
{
pNew=(Link)new Node;
//数据域。
cout<<"请输入职工代码:";
cin>>code;
cout<cin>>name;
cout<cin>>year;
while(cin.fail())
{
cout<<"请输入正确的年份格式。"<cin.clear();
fflush(stdin);
cin>>year;
}
cout<cin>>sex;
cout<cin>>post;
cout<cin>>department;
cout<cin>>wage;
while(cin.fail())
{
cout<<"请输入正确的工资数据。"<cin.clear();
fflush(stdin);
cin>>wage;
}
cout<pNew->m_Code=code;
pNew->m_Name=name;
pNew->m_Year=year;
pNew->m_Sex=sex;
pNew->m_Post=post;
pNew->m_Department=department;
pNew->m_Wage=wage;
//指针域。
pNew->Next=Head->Next;
Head->Next=pNew;
cout<<"数据添加成功!是否继续添加?(Y/N)"<cin>>again;
}while(again=='Y'||again=='y');
return Head;
}
Link Search_Unique_Front(Link Head)
{//查询满足“职工代码“的职工信息(职工代码必需唯一)。
Link ptr;
string code;
ptr=Head;
cout<<"请输入职工代码:";
cin>>code;
cout<while(ptr->Next)
{
if(ptr->m_Code==code)
{cout<<"succeed!"<//Display_Node(ptr);//打印满足条件的节点。
return ptr;}//注意,是返回的查询到的节点的直接前趋节点。
ptr=ptr->Next;//查询下一节点。
}
return ptr;
}

int main()
{

Link t,k;
t=Add(Create(man));
k=Search_Unique_Front(t);
cout<m_Code<<" "<m_Department<<" "<m_Name<<" "<m_Post
<<" "<m_Sex<<" "<m_Wage<<" "<m_Year< cout<
return 0;
}

回答2:

每个函数的功能已经注释清楚,再加上程序的输入提示信息,已经没不要再加其它注释了。注释不是越多越好的,像你里面的一个:
Link pNew;// 声明一个新节点。
个人觉得这个注释没必要,一眼就看出来的了。

回答3:

已经很明了了哦,输入的信息提示不就是相当于解释了?