档案管理系统源码下载_免费的档案管理系统

hacker|
92

文章目录:

有没有学生档案管理系统,基于C#的,需要源码,

#includeiostream

#includestdlib.h

#includestring.h

#includemalloc.h

#define INIT_SIZE 10

#define INCRE_SIZE 10

#define SUBJECT_NUM 3

#define LEN 3

void show_Start();

void show_Table();

void addRecord();

void Info_delete();

void deleteRecord();

void delete_Num(int);

void delete_Name(char tarName[]);

void Info_modify();

void modifyRecord();

void modify_Num(int);

void modify_Name(char[]);

void Info_query();

void queryRecord();

void query_Num(int);

void query_Name(char[]);

void display();

void quit();

void menu_CMD();

char *subject[SUBJECT_NUM] = {"高代","数分","C语言"};

struct STUDENT

{

int num;

char name[20];

char sex;

float score[SUBJECT_NUM];

};

//struct STUDENT stu[LEN + 1];

//STUDENT *record = (STUDENT*)malloc(sizeof(STUDENT)*INIT_SIZE);

int static stuNum = 0;

//先暂时定义三个学生吧...

STUDENT *record = (STUDENT*)malloc(sizeof(STUDENT)*INIT_SIZE);;

int main()

{

//record = (STUDENT*)malloc(sizeof(STUDENT)*INIT_SIZE);

//STUDENT *record = (STUDENT*)malloc(sizeof(STUDENT)*INIT_SIZE);

/*

record[1].num = 1001;

strcpy(record[1].name,"Jason");

record[1].sex = 'M';

record[1].score[0] = 85.0;

record[1].score[1] = 90.0;

record[1].score[2] = 95.0;

record[2].num = 1002;

strcpy(record[2].name,"Jerry");

record[2].sex = 'M';

record[2].score[0] = 85.0;

record[2].score[1] = 90.0;

record[2].score[2] = 95.0;

record[3].num = 1003;

strcpy(record[3].name,"Jessie");

record[3].sex = 'F';

record[3].score[0] = 85.0;

record[3].score[1] = 90.0;

record[3].score[2] = 95.0;

*/

/*

Info_modify();

int key;

cout"请输入您的选择 : ";

cinkey;

if(key == 1)

{

int targetNum;

cout"请输入您欲修改的学生的学号 : ";

cintargetNum;

modify_Num(targetNum);

coutendl;

display();

}

if(key == 2)

{

char targetName[20];

cout"请输入您欲修改学生的姓名 : ";

cintargetName;

modify_Name(targetName);

coutendl;

display();

}

if(key == 3)

{

exit(0);

}

*/

show_Start();

menu_CMD();

return 0;

}

//修改完后还应该显示

void show_Start()

{

//coutendl;

cout" **************************************** "endl;

cout" 这是一个 "endl;

cout" 学生成绩管理系统 "endl;

cout" 可以对学生成绩进行管理 "endl;

cout" 欢迎大家使用 "endl;

cout" Made by Jason "endl;

cout" **************************************** "endl;

}

// 显示表头信息,即是 : 学号,姓名,性别,高代,数分,C语言.

void show_Table()

{

cout"学号""\t""姓名""\t""性别";

cout"\t"subject[0]"\t"subject[1]"\t"subject[2];

coutendl;

}

void menu_CMD()

{

int key;

while(1)

{

cout"1. 增加学生信息"endl;

cout"2. 删除学生信息"endl;

cout"3. 修改学生信息"endl;

cout"4. 查询学生信息"endl;

cout"5. 显示学生信息"endl;

cout"6. 退出"endl;

cout"请输入您的选择 : ";

cinkey;

while(1)

{

if((key 1)||(key 6))

{

int key;

cout"您的输入有误,请重新输入!"endl;

cout"请选(1 - 5) : ";

cinkey;

}

else

{

break;

}

}

switch(key)

{

case 1:

addRecord();

break;

case 2:

deleteRecord();

break;

case 3:

modifyRecord();

break;

case 4:

queryRecord();

break;

case 5:

display();

break;

case 6:

quit();

break;

}

}

}

///////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////

//增加学生信息

void addRecord()

{

if(stuNum == 0)

{

cout"原来没有记录,现在建立新表!"endl;

stuNum++;

}

else

{

cout"现在在当前表的末尾添加新的信息!"endl;

stuNum++;

}

//如果数组空间不够,重新申请空间

if(stuNum INIT_SIZE)

{

cout"内存空间不够,现在重新申请新的内存空间!"endl;

record = (STUDENT*)realloc(record,(INIT_SIZE + INCRE_SIZE)*sizeof(STUDENT));

cout"空间申请完成!"endl;

}

cout"您现在要添加一组新的信息,您确定吗?"endl;

cout"请输入您的选择(Y/N) : ";

char choi;

cinchoi;

if((choi == 'Y')||(choi == 'y'))

{

cout"请输入学号 : ";

cinrecord[stuNum].num;

cout"请输入姓名 : ";

cinrecord[stuNum].name;

cout"请输入性别(M为男,F为女) : ";

cinrecord[stuNum].sex;

int i;

for(i = 0;i SUBJECT_NUM;i++)

{

cout"请输入"subject[i]"的成绩 : ";

cinrecord[stuNum].score[i];

}

}

if((choi == 'N')||(choi == 'n'))

{

cout"退出添加新学生信息!"endl;

coutendl;

}

cout"现在已经有"stuNum"条学生的信息了!"endl;

coutendl;

}

//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////

//删除信息 晚上完成...

//显示deleteRecord的表头信息

void Info_delete()

{

cout"请输入删除方式 : "endl;

cout"1. 按学号删除"endl;

cout"2. 按姓名删除"endl;

cout"3. 退出删除"endl;

}

//删除学生的信息,包含两个子函数

void deleteRecord()

{

int key;

coutendl;

Info_delete();

cout"请输入您的选择 : ";

cinkey;

if(key == 1)

{

int targetNum;

cout"请输入您欲删除学生的学号 : ";

cintargetNum;

//按学号删除

delete_Num(targetNum);

coutendl;

}

if(key == 2)

{

char targetName[20];

cout"请输入您欲删除学生的姓名 : ";

cintargetName;

//按姓名删除

delete_Name(targetName);

coutendl;

}

if(key == 3)

{

while(1)

{

menu_CMD();

}

}

}

//按学号删除学生信息

//只用完成删除操作,而不必输出. 输出的操作可以在主菜单中进行

void delete_Num(int tarNum)

{

int i;

for(i = 1;i = stuNum;i++)

{

if(record[i].num == tarNum)

{

//删除还要分两种情况讨论

//1. 欲删除的学生信息是最后一位

//2. 欲删除的学生信息不是最后一位

//第一种情况,欲删除的学生是最后一位

if(i = stuNum)

{

cout"您所要删除的学生信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t"

record[i].score[0]record[i].score[1]"\t"record[i].score[2];

coutendl;

coutendl"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum - 1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

//显示信息应该放在后面

/*

stuNum--;

cout"现在还剩下"stuNum"条学生的信息";

coutendl;

*/

}

//2.第二种情况,欲删除的学生不是最后一位

if(i != stuNum)

{

cout"您所要删除的学生信信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t"

record[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

for(int j = i+1;j = stuNum;j++)

{

record[j-1] = record[j];

}

//接着完成输出

coutendl;

cout"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum-1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

/*

stuNum--;

cout"现在还剩下"stuNum"条学生的信息";

coutendl;

*/

}

stuNum--;

cout"现在还是剩下"stuNum"条学生的信息";

coutendl;

}

}

}

/*

//方法同上

void delete_Name(char tarName[])

{

int i;

for(i = 1;i = stuNum;i++)

{

if(strcmp(record[i].name,tarName) == 0)

{

//删除还要分两种情况讨论

//1. 欲删除的学生信息是最后一位

//2. 欲删除的学生信息不是最后一位

//第一种情况 : 欲删除学生是最后一位

if(i = stuNum)

{

cout"您所要删除的学生信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t"

record[i].score[0]record[i].score[1]"\t"record[i].score[2];

coutendl;

coutendl"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum - 1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

}

//第二种情况 : 欲删除学生不是最后一位

if(i != stuNum)

{

cout"您所要删除的学生信信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t"

record[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

//整体往前 前移一位

for(int j = i+1;j = stuNum;j++)

{

record[j-1] = record[j];

}

coutendl;

//接着完成输出

cout"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum-1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

coutendl;

}

}

}

}

*/

void delete_Name(char tarName[])

{

int i;

for(i = 1;i = stuNum;i++)

{

//删除还要分两种情况讨论

//1. 欲删除的学生信息是最后一位

//2. 欲删除的学生信息不是最后一位

//当欲删除的学生是最后一位,直接输出前面LEN-1位学生的信息

if(strcmp(record[i].name,tarName) == 0)

{

if(i == stuNum)

{

cout"您所要删除的学生信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t"

record[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

coutendl;

cout"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum-1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

/*

stuNum--;

cout"现在还剩下"stuNum"条学生的信息";

coutendl;

*/

}

//当欲删的学生不是最后一位,整体往前前移一位

if(i != stuNum)

{

cout"您所要删除的学生信息是 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex"\t";

coutrecord[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

coutendl;

//整体往前前移一位

for(int j = i+1;j = stuNum;j++)

{

record[j-1] = record[j];

}

//然后输出

coutendl;

cout"删除后学生信息表为 : "endl;

show_Table();

for(int i = 1;i = stuNum-1;i++)

{

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(int j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

/*

stuNum--;

cout"现在还剩下"stuNum"条学生的信息";

coutendl;

*/

}

stuNum--;

cout"现在还剩下"stuNum"条学生的信息";

coutendl;

}

}

}

/*****************************************************************************

******************************************************************************/

//显示modifyRecord的表头信息

void Info_modify()

{

cout"请输入修改方式 : "endl;

cout"1. 按学号修改"endl;

cout"2. 按姓名修改"endl;

cout"3. 退出修改"endl;

}

//查询学生的成绩,当然里面包括两个子函数

void modifyRecord()

{

int key;

coutendl;

Info_modify();

cout"请输入您的选择 : ";

cinkey;

//按学号修改

if(key == 1)

{

int targetNum;

cout"请输入您欲修改的学生的学号 : ";

cintargetNum;

modify_Num(targetNum);

coutendl;

//display();

}

//按姓名修改

if(key == 2)

{

char targetName[20];

cout"请输入您欲修改学生的姓名 : ";

cintargetName;

modify_Name(targetName);

coutendl;

//display();

}

//退出修改

if(key == 3)

{

while(1)

{

menu_CMD();

}

}

}

//按学号修改

void modify_Num(int tarNum)

{

int i;

for(i = 1;i = stuNum;i++)

{

if(record[i].num == tarNum)

{

coutendl"请修改该学生的信息"endl;

cout"请输入该学生的学号 : ";

cinrecord[i].num;

cout"请输入该学生的姓名 : ";

cinrecord[i].name;

cout"请输入该学生的性别 : ";

cinrecord[i].sex;

cout"请输入"subject[0]"的成绩 : ";

cinrecord[i].score[0];

cout"请输入"subject[1]"的成绩 : ";

cinrecord[i].score[1];

cout"请输入"subject[2]"的成绩 : ";

cinrecord[i].score[2];

}

}

}

//按姓名修改

void modify_Name(char tarName[])

{

int i;

for(i = 1;i = stuNum;i++)

{

if(strcmp(record[i].name,tarName) == 0)

{

coutendl"请修改该学生的信息 : "endl;

cout"请输入该学生的学号 : ";

cinrecord[i].num;

cout"请输入该学生的姓名 : ";

cinrecord[i].name;

cout"请输入该学生的性别 : ";

cinrecord[i].sex;

cout"请输入"subject[0]"的成绩 : ";

cinrecord[i].score[0];

cout"请输入"subject[1]"的成绩 : ";

cinrecord[i].score[1];

cout"请输入"subject[2]"的成绩 : ";

cinrecord[i].score[2];

}

}

}

///////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////

//显示queryRecord的表头信息

void Info_query()

{

cout"请输入查询方式 : "endl;

cout"1. 按学号查询"endl;

cout"2. 按姓名查询"endl;

cout"3. 退出查询"endl;

}

//查询学生信息queryRecord

void queryRecord()

{

int key;

coutendl;

Info_query();

cout"请输入您的选择 : ";

cinkey;

if(key == 1)

{

int targetNum;

cout"请输入您欲查询学生的学号 : ";

cintargetNum;

query_Num(targetNum);

coutendl;

}

if(key == 2)

{

char targetName[20];

cout"请输入您欲查询学生的学号 : ";

cintargetName;

query_Name(targetName);

coutendl;

}

//退出查询,退回到主菜单吧...

if(key == 3)

{

while(1)

{

menu_CMD();

}

}

}

//按学号查询

void query_Num(int tarNum)

{

int i;

for(i = 1;i = stuNum;i++)

{

if(record[i].num == tarNum)

{

//如果表中有该学生信息的话,仅用输出该学生的信息即可.

//输出该学生的信息

cout"该学生的信息如下 : "endl;

//显示表头信息

show_Table();

//显示该学生具体的信息

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

cout"\t"record[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

coutendl;

}

}

}

//按姓名查询

void query_Name(char tarName[])

{

int i;

for(i = 1;i = stuNum;i++)

{

if(strcmp(record[i].name,tarName) == 0)

{

cout"该学生的信息如下 : "endl;

show_Table();

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

cout"\t"record[i].score[0]"\t"record[i].score[1]"\t"record[i].score[2];

coutendl;

}

}

}

///////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////

//先显示所有学生的信息吧

//显示record里所有学生的成绩

void display()

{

show_Table();

int i,j;

for(i = 1;i = stuNum;i++)

{

//cout"学号""\t""姓名""\t""性别";

coutrecord[i].num"\t"record[i].name"\t"record[i].sex;

for(j = 0;j SUBJECT_NUM;j++)

{

cout"\t"record[i].score[j];

}

coutendl;

}

coutendl;

}

//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////

//退出

void quit()

{

char choi;

cout"您确定要退出吗?"endl;

cout"请输入您的选择(Y/N) : ";

cinchoi;

if((choi == 'Y')||(choi == 'y'))

{

cout"现在退出学生信息管理系统"endl;

exit(0);

}

//如果不是退出,则接着退回到主界面

else

{

coutendl;

menu_CMD();

}

}

这个是原创的... 在C-Free 4.0里跑过,可以正常运行

你可以试着跑一下,如果有什么问题可以和我联系

| 评论(1)

向TA求助

回答者: 伦落校园4914 来自团队 嘻嘻爱好者 | 二级采纳率:5%

擅长领域: C/C++ 数学

参加的活动: 暂时没有参加的活动

相关内容

2009-2-28求 学生信息管理系统 C程序源代码 1

2007-7-29学生信息管理系统 C/C++ 的 源代码 22

2011-3-16请高手紧急求救啊!!急求学生信息管理系统 源代码 JAVA的 myeclip...

2009-8-31求 MFC 学生信息管理系统 源代码 5

2010-9-9MFC 学生信息管理系统 源代码 那个。。。我也想要可以吗? 1

更多关于学生档案管理系统,源码的问题

学生信息管理系统:... 学生信息管理系统:... 学生信息管理系统:...

2012-2-18学生信息管理系统论文,求高手11

2012-1-22学生信息管理系统论文

2011-12-15谁有学生信息管理系统的论文,发过来哦!要求:B/S的,java+mysql的. ...

2011-12-19求毕业设计vb+access 题目是学生信息管理系统 哪位大神有的 全套发我...

2011-12-15谁有学生信息管理系统的论文,发过来哦!

更多关于学生信息管理系统:论文的问题

回答 共2条

2010-12-22 20:03 Shanglogo | 六级

不知道你要实现什么样的功能,下面的你可以参考一下。

#includeiostream.h

#includeiomanip.h

void input(); //声明7个函数

void output();

void paixu();

void chazhao();

void charu();

void shanchu();

void tongji();

struct Student //结构体

{

int num;

char name[12];

float math;

float eng;

float com;

float sum;

float ave;

};

Student x[30];

int N=0;

void main()

{

int m;

do

{ //开场效果

coutendl;

coutendl;

cout" * * * * * * * * * * * * * * * * * * * * * * *"endl;

cout" * 欢迎使用学生信息管理系统 *"endl;

cout" * 1.输入信息 2.输出信息 *"endl;

cout" * 3.总分排序 4.查找信息 *"endl;

cout" * 5.插入信息 6.删除信息 *"endl;

cout" * 7.统计分数 8.退出系统 *"endl;

cout" * Made by Shanglogo *"endl;

cout" * * * * * * * * * * * * * * * * * * * * * *"endl;

coutendl;

我们单位成立了一个档案中心,想购买一套档案管理系统,有没有好的软件公司给推荐一下!!

感觉楼主想找河北的软件公司,是考虑到售后维护吗?如果是这样,那大可不必,因为软件跟别的商品不同,它是最适合通过网络进行服务的商品。我研究过一些档案软件,我没注意过是哪个省开发的,我只从适用性上推荐几款给你吧,这几家无论是软件本身还是服务都是一流的,因为我推荐的这几款软件我都用过,而且也都通过网络跟对方交流过:

1、东图档案管理软件,牌子比较老,软件质量过硬;

2、量子伟业档案管理软件,用着感觉不错,多个版本各有特点,要买的话建议多试用几个版本,选择最适合自己的;

3、万能档案管理软件,近两年刚火起来的一款软件,感觉是操作最简单、最方便的一款,我个人比较喜欢这款软件的自定义档案模板、自定义打印样式功能。

其它还有一些不错的档案软件,但有的功能太简单,还有的在设计上我认为没有出彩,在以上三款里面选,应该不会有错,大大节省了你的时间。

档案管理系统的档案管理系统软件

“旗帜数字化干部人事档案管理系统”是一套既档案采集、档案管理、档案利用于一体的综合档案管理软件。该系统的应用可实现对档案及档案材料的收集、鉴别、整理、保管、转递、统计、查阅等日常工作的数字化管理,并可通过组织系统专网实现干部档案的网上浏览和远程查阅功能,进一步提高干部信息化管理水平,加强对干部工作的规范化管理,这为今后干部任用、干部提拔等工作带来了极大的方便。

“旗帜数字化干部人事档案管理系统”由三部分组成:档案管理系统、档案采集系统以及网上查阅系统。

档案管理系统:实现干部人事档案管理工作中对干部档案、材料的收集、鉴别、整理、保管、转递、统计、查阅等业务功能,主要由四大模块组成:业务管理、信息管理、系统维护及管理工具。

档案采集系统:档案采集系统主要完成对纸质档案材料的数字化采集处理功能。系统提供了目录整理、档案采集、档案审核、系统维护四大功能,并利用现化代网络技术,实现多人多客户端,对多本档案,不同材料同时采集功能,是一套高效、快捷的档案数字化采集软件。

网上查阅系统:数字化档案查阅系统是以组织系统专网为网络基础,采用B/S(浏览器/服务器)模式架构,在组织系统内部实现了本地及远程查档、阅档功能。并采用多种安全加密处理方式,确保系统运行安全可靠。 档案流水化采集功能

实现多人多客户端对多本档案同时进行扫描采集功能,并按操作角色进行分工及权限管理。

网上档案阅档功能

实现单位内部或异地对干部档案的查阅要求。在查档过程中,系统进行全面的日志记录,对信息传输、用户访问、数据打印等进行了全面的安全设计。

档案业务处理功能

紧密接合组织部门档案管理工作,完成日常档案业务处理功能。主要包括:档案案卷管理、档案材料的管理、档案零散材料收集、档案信息审核、任前档案审核等功能。

基础信息维护

包括单位信息、在职、后备、离退休干部管理、其他人员类别管理、各种样式名册输出等。

查询处理、统计分析

根据不同的需求实现对数据库人员信息、档案信息的综合查询及统计分析功能,条件设置灵活,结果以二维表、柱状图、花名册等形式显示。

其它辅助功能

包括数据的发送、接收;数据的备份、恢复;用户管理、日志管理功能以及事务提醒等。

3条大神的评论

  • avatar
    访客 2022-07-12 下午 01:54:00

    理、其他人员类别管理、各种样式名册输出等。查询处理、统计分析根据不同的需求实现对数据库人员信息、档案信息的综合查询及统计分析功能,条件设置灵活,结果以二维表、柱状图、花名册等形式显示。其它辅助功能包括数据的发送、接收;数据的备份、恢复;用户管理、日志管理功能以及事务提醒等。

  • avatar
    访客 2022-07-12 上午 11:46:15

    } //如果数组空间不够,重新申请空间 if(stuNum INIT_SIZE) { cout"内存空间不够,现在重新申请新的内存空间!"endl; record = (STUDENT*)realloc(record,(INIT_SIZE + INCRE_SIZE)*sizeof(S

  • avatar
    访客 2022-07-12 下午 02:56:28

    coutendl; } }}//按姓名查询void query_Name(char tarName[]){ int i; for(i = 1;i = stuNum;i++) { if(strcmp(record[i].name,tarName) == 0)

发表评论