课设题目
个人简历管理系统
课设要求
- 用户管理;
- 设计个人简历信息,实现信息的录入、修改和删除;
- 按身份证号查询个人简历
- 按性别统计并显示人员信息
- 按专业统计并显示人员信息
- 将统计结果保存到文件中
- 简历信息导入和导出
程序运行界面
核心代码
// pay.cpp : implementation file
//
#include "stdafx.h"
#include "个人简历管理系统.h"
#include "pay.h"
#include"Cai.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// pay dialog
BOOL pay::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_pay.InsertColumn(0,"姓名",LVCFMT_CENTER,100);
m_pay.InsertColumn(1,"性别",LVCFMT_CENTER,100);
m_pay.InsertColumn(2,"身份证号",LVCFMT_CENTER,100);
m_pay.InsertColumn(3,"专业",LVCFMT_CENTER,100);
m_pay.InsertColumn(4,"个人简介",LVCFMT_CENTER,165);
m_pay.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
ShowCai();
m_sex.SetCurSel(0);
m_major.SetCurSel(0);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void pay::ShowCai()
{
m_pay.DeleteAllItems();
int num=ReadCai();
for(int i=0;i<num;i++)
{
m_pay.InsertItem(i,0);
m_pay.SetItemText(i,0,cai[i].name);
m_pay.SetItemText(i,1,cai[i].sex);
m_pay.SetItemText(i,2,cai[i].id);
m_pay.SetItemText(i,3,cai[i].major);
m_pay.SetItemText(i,4,cai[i].about);
}
}
int pay::ReadCai()
{
FILE *file=fopen("resume.txt","r");
int a=0;
while(!feof(file))
{
fscanf(file,"%s%s%s%s%s",&cai[a].name,&cai[a].sex,&cai[a].id,&cai[a].major,&cai[a].about);
a++;
}
fclose(file);
a--;
return a;
}
pay::pay(CWnd* pParent /*=NULL*/)
: CDialog(pay::IDD, pParent)
{
//{{AFX_DATA_INIT(pay)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void pay::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(pay)
DDX_Control(pDX, IDC_COMBO2, m_major);
DDX_Control(pDX, IDC_COMBO1, m_sex);
DDX_Control(pDX, IDC_LIST1, m_pay);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(pay, CDialog)
//{{AFX_MSG_MAP(pay)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
ON_BN_CLICKED(IDC_BUTTON6, OnButton6)
ON_BN_CLICKED(IDC_BUTTON7, OnButton7)
ON_BN_CLICKED(IDC_BUTTON8, OnButton8)
ON_BN_CLICKED(IDC_BUTTON9, OnButton9)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// pay message handlers
void pay::OnButton1()
{
int sel = m_pay.GetSelectionMark();
if(sel ==-1)
{
MessageBox("请选择需要删除的简历");
}
CString id= m_pay.GetItemText(sel,0);
int num=ReadCai();
FILE *file=fopen("resume.txt","w+");
for(int i=0;i<num;i++)
{
if(i==sel)
continue;
fprintf(file,"%s %s %s %s %s\r\n",cai[i].name,cai[i].sex\
,cai[i].id,cai[i].major,cai[i].about);
}
fclose(file);
MessageBox("删除成功","提示");
ShowCai();
}
void pay::OnButton2()
{
// TODO: Add your control notification handler code here
int sel = m_pay.GetSelectionMark();
CString sex,id,major,about;
GetDlgItem(IDC_COMBO1)->GetWindowText(sex);
GetDlgItem(IDC_EDIT1)->GetWindowText(id);
GetDlgItem(IDC_COMBO2)->GetWindowText(major);
GetDlgItem(IDC_EDIT3)->GetWindowText(about);
if(sel ==-1)
{
MessageBox("请选择需要修改的简历");
}
else
{
if(sex==""||id==""||major==""||about=="")
{
MessageBox("修改信息不完整!请补充完所有信息!");
}
else
{
CString name=m_pay.GetItemText(sel,0);
int num=ReadCai();
FILE *file=fopen("resume.txt","w");
for(int i=0;i<num;i++)
{
if(sel==i)
{
strcpy(cai[i].name,name);
strcpy(cai[i].sex,sex);
strcpy(cai[i].id,id);
strcpy(cai[i].major,major);
strcpy(cai[i].about,about);
}
fprintf(file,"%s %s %s %s %s\r\n",cai[i].name,cai[i].sex\
,cai[i].id,cai[i].major,cai[i].about);
}
fclose(file);
MessageBox("修改成功");
ShowCai();
}
}
}
void pay::OnButton3()
{
// TODO: Add your control notification handler code here
m_pay.DeleteAllItems();
CString id;
GetDlgItem(IDC_EDIT1)->GetWindowText(id);
if(id=="")
{
ShowCai();
}
else
{
int i = 0;
for(int a=0;a<ReadCai();a++)
{
if(strcmp(id,cai[a].id)==0)
{
m_pay.InsertItem(i,0);
m_pay.SetItemText(i,0,cai[a].name);
m_pay.SetItemText(i,1,cai[a].sex);
m_pay.SetItemText(i,2,cai[a].id);
m_pay.SetItemText(i,3,cai[a].major);
m_pay.SetItemText(i,4,cai[a].about);
i++;
}
}
}
}
void pay::OnButton5()
{
// TODO: Add your control notification handler code here
m_pay.DeleteAllItems();
CString major;
GetDlgItem(IDC_COMBO2)->GetWindowText(major);
if(major=="")
{
ShowCai();
}
else
{
int i = 0;
for(int a=0;a<ReadCai();a++)
{
if(strcmp(major,cai[a].major)==0)
{
m_pay.InsertItem(i,0);
m_pay.SetItemText(i,0,cai[a].name);
m_pay.SetItemText(i,1,cai[a].sex);
m_pay.SetItemText(i,2,cai[a].id);
m_pay.SetItemText(i,3,cai[a].major);
m_pay.SetItemText(i,4,cai[a].about);
i++;
}
}
}
}
void pay::OnButton6()
{
// TODO: Add your control notification handler code here
m_pay.DeleteAllItems();
CString sex;
GetDlgItem(IDC_COMBO1)->GetWindowText(sex);
if(sex=="")
{
ShowCai();
}
else
{
int i = 0;
for(int a=0;a<ReadCai();a++)
{
if(strcmp(sex,cai[a].sex)==0)
{
m_pay.InsertItem(i,0);
m_pay.SetItemText(i,0,cai[a].name);
m_pay.SetItemText(i,1,cai[a].sex);
m_pay.SetItemText(i,2,cai[a].id);
m_pay.SetItemText(i,3,cai[a].major);
m_pay.SetItemText(i,4,cai[a].about);
i++;
}
}
}
}
void pay::OnButton7()
{
// TODO: Add your control notification handler code here
// 获取当前符合条件的记录个数
int nums=m_pay.GetItemCount();
CString name,sex,id,major,about;
FILE *file=fopen("major.txt","a+");
for(int i=0;i<nums;i++)
{
fprintf(file,"%s %s %s %s %s\r\n",m_pay.GetItemText(i,0),m_pay.GetItemText(i,1),m_pay.GetItemText(i,2),m_pay.GetItemText(i,3),m_pay.GetItemText(i,4));
}
fclose(file);
MessageBox("保存成功!");
// CString x;
// x.Format("%d",nums);
// MessageBox(x);
//(CListCTrl *)GetDlgItem(IDC_LIST1)->GetItemCount(nums);
}
void pay::OnButton8()
{
// TODO: Add your control notification handler code here
int nums=m_pay.GetItemCount();
CString name,sex,id,major,about;
FILE *file=fopen("sex.txt","a+");
for(int i=0;i<nums;i++)
{
fprintf(file,"%s %s %s %s %s\r\n",m_pay.GetItemText(i,0),m_pay.GetItemText(i,1),m_pay.GetItemText(i,2),m_pay.GetItemText(i,3),m_pay.GetItemText(i,4));
}
fclose(file);
MessageBox("保存成功!");
}
void pay::OnButton9()
{
// TODO: Add your control notification handler code here
MessageBox("保存成功!");
}
项目源码
需要源码的小伙伴请前往
微信公众号:海轰Pro
回复: 海轰
O(∩_∩)O哈哈~