第一篇:刑釋解教人員信息管理系統(tǒng)
刑釋解教人員信息管理系統(tǒng)
鄉(xiāng)鎮(zhèn)(街道)司法所客戶端操作說明
北京中和志遠(yuǎn)數(shù)碼科技有限公司
第一節(jié)
系統(tǒng)簡介
一、系統(tǒng)概述
刑釋解教人員信息管理系統(tǒng),主要功能是通過網(wǎng)絡(luò)對刑釋解教人員的信息錄入、信息核實、幫教安置、統(tǒng)計查詢等工作實現(xiàn)信息化管理。根據(jù)安置幫教工作的實際需求,每級安置幫教工作領(lǐng)導(dǎo)小組辦公室、監(jiān)獄、勞教所、看守所、監(jiān)獄局、勞教局、公安廳、司法所都有不同功能的軟件。
刑釋解教人員信息管理系統(tǒng)的設(shè)計目標(biāo)是:
1、建成服刑在教人員信息庫,并在監(jiān)所和司法所之間建立直接溝通反饋的通道,保證服刑在教人員提供信息的真實有效,從源頭上杜絕“三假”人員,有利于刑釋解教人員的幫教安置工作的開展。
2、建成以采集刑釋解教人員基本信息、統(tǒng)計分析和定向傳遞為主的綜合性安置幫教工作管理平臺。
3、在系統(tǒng)中建立統(tǒng)一的安置幫教工作秩序和操作流程,促進安置幫教工作的規(guī)范化和科學(xué)化。規(guī)范接口,實現(xiàn)中央、?。▍^(qū)、市)、地市、區(qū)縣、鄉(xiāng)鎮(zhèn)(街道)刑釋解教人員信息的無縫流轉(zhuǎn)。
4、提供分類查詢功能和統(tǒng)計分析功能,提高安置幫教工作的效率和質(zhì)量。
5、數(shù)據(jù)可以通過網(wǎng)絡(luò)實時傳遞,大大提高了信息傳輸?shù)男?,?jié)省了時間。系統(tǒng)由以下客戶端組成:
二、基本流程
1、各級用戶名和密碼的分配
本系統(tǒng)的用戶名是由上往下逐級分配的,具體分配流程如下圖所示:
上級按一定原則在系統(tǒng)中分配下級用戶的用戶名和密碼后,通知下級,下級就可以使用分配好的用戶名和密碼登錄。
2、用戶登錄
為了保證系統(tǒng)的安全性,使用網(wǎng)絡(luò)版系統(tǒng)的電腦必須安裝“刑釋解教人員信息管理系統(tǒng)(單機版)”,并從基層司網(wǎng)站(http://jiceng.rmtj.org.cn/)或北京中和志遠(yuǎn)公司網(wǎng)站(004km.cn/)或北京中和志遠(yuǎn)公司網(wǎng)站(004km.cn)下載“ 鄉(xiāng)鎮(zhèn)(街道)司法所客戶端更新包 ”。
3、進入原版程序
打開并登錄單機版軟件,點擊主界面工具欄中的“平臺入口”按鈕,就可以登錄平臺。
三、使用流程
1、系統(tǒng)登錄
鄉(xiāng)鎮(zhèn)(街道)司法所登錄界面如下圖所示:
用戶使用上級單位分配的用戶名和密碼就可以登錄系統(tǒng)了。
2、首次登錄,填寫單位信息
首次登錄系統(tǒng)的用戶必須填寫單位信息,如下圖所示:
3、進入主界面
填寫完單位信息后,就可以進入系統(tǒng)主界面了,如下圖所示:
主界面上方是系統(tǒng)標(biāo)題,右上角是 “修改密碼”和“退出系統(tǒng)”按鈕。主界面左邊是“管理目錄”,里面是用戶進行操作的菜單,這些菜單是系統(tǒng)全部功能的入口。主界面右邊是系統(tǒng)的常用操作以及與人員相關(guān)的信息。下面將對系統(tǒng)主要的功能進行說明。
4、系統(tǒng)功能介紹
對系統(tǒng)的全部功能進行詳細(xì)介紹。
4.1、人員管理
人員管理主要包括“等待核實列表”“核實成功列表”“核實失敗列表”“預(yù)放人員列表”“今天釋放人員”等操作。
4.1.1、等待核實列表
等待核實列表是對等待核實人員進行核實及修改的入口,包含了全部需要本單位核實的人員信息,單擊左側(cè)的“等待核實列表”打開顯示頁面如下圖所示:
等待核實列表主要顯示了人員的姓名、性別、身份證號、戶籍地址、核實狀態(tài)、釋放時間等主要人員信息以及操作按鈕。
[注:如果監(jiān)獄(勞教所、看守所)未錄入人員的釋放時間,則釋放時間一欄顯示“0000-00-00”]
1、在“等待核實列表”中點擊操作欄中的查看可以查看人員信息,如下圖所示:
2、點擊修改可以進入“修改人員信息”頁面,如下圖所示:
鄉(xiāng)鎮(zhèn)(街道)司法所用戶可以修改人員的戶籍地址和詳細(xì)門牌號,其它信息不可修改。
3、點擊核實進入“核實人員信息”頁面,如下圖所示:
核實人員信息頁面有“核實成功”“核實失敗”“取消核實”三個按鈕,根據(jù)人員基本情況選擇不同操作,如果信息真實,則點擊“核實成功”按鈕同時錄入幫教計劃,如下圖所示:
錄入幫教計劃后單擊保存按鈕,人員信息核實成功;如果信息有誤,則點擊“核實失敗”按鈕同時錄入未核實原因及可能去向,如下圖所示:
然后單擊保存按鈕完成操作。4.1.2、核實成功列表
核實成功列表包含了全部已核實成功的人員,在核實成功列表中可以查看人員信息、修改人員戶籍地址、退回以及查看幫教計劃等,其頁面如下圖所示: 點擊操作欄中的查看可以查看人員的詳細(xì)信息; 點擊修改可以編輯人員的戶籍地址及詳細(xì)門牌號,和“等待核實列表”中的修改功能一樣,詳細(xì)操作請參考相關(guān)內(nèi)容; 如果發(fā)現(xiàn)有信息不符的人員可以點擊退回,將該人員退回所在監(jiān)獄(看守所、勞教所),其頁面如下:
填寫退回原因并單擊保存按鈕,退回成功; 點擊幫教計劃可以查看已核實成功人員的幫教計劃,如下圖所示:
4.1.3、核實失敗列表
核實失敗列表包含了全部核實失敗人員的信息,其頁面如下圖所示:
在核實失敗列表中可以查看人員的詳細(xì)信息和未核實原因及可能去向 1 點擊查看可以進入人員詳細(xì)信息頁面; 點擊查看原因查看未核實原因及可能去向,如下圖所示:
4.1.4、預(yù)放人員列表
預(yù)放人員列表中包含了下月將要釋放(解教)的全部人員,其頁面如下所示: 針對預(yù)放人員,司法所需要向監(jiān)獄(勞教所、看守所)發(fā)送一份回執(zhí),其頁面如下圖所示:
點擊回執(zhí)記錄可以查看以往的回執(zhí),其頁面如下:
4.1.5、今天釋放人員
今天釋放人員包含了全部今天要釋放(解教)的人員,其頁面如下所示:
4.2、信息查詢 4.2.1、人員信息查詢
人員信息查詢可以根據(jù)不同條件查詢本轄區(qū)的人員,其頁面如下圖所示:
單擊更多選項可以查看更多查詢選項,頁面如下圖所示:
輸入查詢條件點擊搜索按鈕,得到查詢結(jié)果,如下圖所示:
4.2.2、預(yù)銜接信息查詢
預(yù)銜接信息查詢可以查詢?nèi)款A(yù)放人員的信息,其頁面如下圖所示:
根據(jù)監(jiān)所不同查詢條件也不相同,上圖默認(rèn)的監(jiān)所類型為監(jiān)獄(看守所),當(dāng)選擇監(jiān)所類型為勞教所時,查詢頁面如下圖所示:
單擊更多選項可以查看更多查詢選項,頁面如下圖所示:
輸入查詢條件點擊搜索按鈕,得到查詢結(jié)果,如下圖所示:
4.5、賬號設(shè)置 4.5.1、個人資料修改
點擊“賬戶設(shè)置”?“個人信息修改”,在打開的界面中可以修改本級基本信息,修改的信息上級可以看到,如下圖所示:
修改完畢后點“保存”就可以修改成功。
4.5.2、登錄密碼修改
為了安全原因,請定期修改密碼,但是如果因為密碼遺忘而進不去系統(tǒng),需要聯(lián)系直接上級單位,讓上級進行修改。修改本級密碼的方式是點擊“登錄密碼修改”,打開的頁面如下圖所示;
設(shè)置密碼需要滿足一定的條件,比如帶有123456這種連續(xù)的數(shù)字的密碼不被接受。
5、地區(qū)查詢
地區(qū)查詢的作用是當(dāng)監(jiān)獄在錄入人員戶籍地址時,如果只知道下級行政區(qū)劃名而不知道上級的行政區(qū)劃名,可以通過“地區(qū)查詢”來找到,比如一個服刑在教人員的資料中填寫的是山西省運城市歷山鎮(zhèn),中間缺一個區(qū)縣的名字,這時,就可以在地區(qū)查詢中填入歷山,系統(tǒng)中如果有這個地區(qū),就可以查詢到所有上級的名字,如下圖所示:
查詢的方法是在“地區(qū)查詢”下的文本框中輸入要查詢的內(nèi)容,然后點擊“查詢”按鈕就可以。
第二篇:高校人員信息管理系統(tǒng)
高校人員信息管理系統(tǒng)
開發(fā)一個簡易的高校人員信息管理系統(tǒng),主要針對高校人員的基本信息進行管理。采用對象鏈表或?qū)ο髷?shù)組存放各個對象,實現(xiàn)新增、修改、刪除、查詢以及統(tǒng)計等功能。
下面源代碼用c++三段式格式實現(xiàn) ** peo.h**
#ifndef _P #define _P class person {
protected:
char number[30];//學(xué)號
char name[30];//姓名
char sex[30];//性別
int age;//年齡
char department[30];//部門
char tel[30];//聯(lián)系方式
person *next;
// 基類的指針作為next指針 public: friend class manage;person(char a[],char b[],char c[],int d,char e[],char f[]);~person();virtual void change(const char*)=0;virtual void display()=0;virtual void save()=0;};
class student:public person //學(xué)生類 { protected: char grade[30];//班級
char major[30];//專業(yè)
double result;//成績 public: student(char a[],char b[],char c[],int d,char e[],char f[],char g[],char h[],double i);~student();void save();void change(const char*);void display();//在派生類實現(xiàn)具體方法,即所謂的“多種方法” };
class teacher:public person {
protected: char title[30];//職稱
char major[30];//專業(yè) public: teacher(char a[],char b[],char c[],int d,char e[],char f[],char j[],char k[]);~teacher();void save();void change(const char*);void display();//在派生類實現(xiàn)具體方法,即所謂的“多種方法” };
class worker:public person {
protected: char job[30];//職務(wù)
char rank[30];//級別 public: worker(char a[],char b[],char c[],int d,char e[],char f[],char l[],char m[]);~worker();void save();
void change(const char*);void display();//在派生類實現(xiàn)具體方法,即所謂的“多種方法” };//template
protected: static int count;//人員數(shù)量
person *head;
//鏈表頭指針 public:
manage();~manage();void insert(person*);//添加人員信息
插入結(jié)點
void add();void search(const char*);//按學(xué)號查詢信息
void del(const char*);//刪除人員信息
void change(const char* s);//修改人員信息
void display();//顯示
顯示結(jié)點信息
void save();//保存
將所有人員信息寫入到文件 };#endif //****************************
2**peo.cpp*************************// #include“peo.h” #include student::student(char a[],char b[],char c[],int d,char e[],char f[],char g[],char h[],double i):person(a,b,c,d,e,f){ strcpy(grade,g);strcpy(major,h);result=i;} student::~student(){} void student::display(void){ cout<<“學(xué)號”< cout<<“打開文件失敗”;} file1< void student::change(const char*){ cout<<“輸入修改后的信息”< 姓名 性別 年齡 部門 聯(lián)系方式 班級 專業(yè) 成績”< teacher::teacher(char a[],char b[],char c[],int d,char e[],char f[],char j[],char k[]):person(a,b,c,d,e,f){ strcpy(title,j);strcpy(major,k);} teacher::~teacher(){} void teacher::display(void){ cout<<“學(xué)號”< cout<<“打開文件失敗”;} file1< void teacher::change(const char*){ cout<<“輸入修改后的信息”< 姓名 性別 年齡 部門 聯(lián)系方式 職稱 專業(yè)”< worker::worker(char a[],char b[],char c[],int d,char e[],char f[],char l[],char m[]):person(a,b,c,d,e,f){ strcpy(job,l);strcpy(rank,m);} void worker::display(void){ cout<<“學(xué)號”< void worker::save(){ fstream file1;file1.open(“worker.txt”,ios::out);if(!file1){ cout<<“打開文件失敗”;} file1< void worker::change(const char*){ cout<<“輸入修改后的信息”< 姓名 性別 年齡 部門 聯(lián)系方式 職務(wù) 級別”< /*******************************************************************************/ manage::manage(){ head=0;cout<<“鏈表開始”< void manage::insert(person *i){ person *node;if(head==0){ head=i; head->next=0;} else { node=head; while(node->next) node=node->next; node->next=i; i->next=0;} } void manage::search(const char* s)//按學(xué)號查詢?nèi)藛T信息 { person* node=head;int flog=0;while(node){ if(strcmp(node->number,s)==0) { flog=1; node->display();//顯示查詢結(jié)果 break; } else node=node->next;} if(flog){ // node->display(); cout<<“查找成功”< cout<<“未找到該結(jié)點”< void manage::del(const char* s)//按學(xué)號刪除人員信息 { person *node1,*node2;int flog=0;node1=head;if(strcmp(head->number,s)==0){ head=head->next; node1->~person(); flog=1;} else { while(node1) if(strcmp(node1->number,s)==0) { node2->next=node1->next; node1->~person(); flog=1; break; } else { node2=node1; node1=node1->next; } } if(!flog) cout<<“未找到要刪除的結(jié)點”< cout<<“結(jié)點被刪除”< cout<<“空鏈表”< node=head; while(node) { node->display(); node=node->next; } } } void manage::save(){ person *node;if(head==0) cout<<“空鏈表”< node=head; while(node) { node->save(); node=node->next; } } } void manage::change(const char* s)//按學(xué)號修改人員信息 { person* node=head;int flog=0;while(node){ if(strcmp(node->number,s)==0) { flog=1; node->change(s);//顯示修改結(jié)果 break; } else node=node->next;} if(flog){ // node->display(); cout<<“修改成功”< cout<<“未找到該結(jié)點”< void manage::add() //添加人員信息 { cout<<“****************************添加*****************************”< 人員人員管信息 理系統(tǒng) cout<<“ 請選擇需要操作的對象:(選擇其他則退出)”< 1.學(xué)生”< 2.老師”< 3.職工”< cin>>i; cout<<“請輸入個人信息”< if(i==1){ cout<<“請輸入班級、專業(yè)、成績”< a=new student(number,name,sex,age,department,tel,grade,major,result); //table.insert(a);} if(i==2){ cout<<“請輸入職稱及專業(yè)”< a=new teacher(number,name,sex,age,tel,department,title,major);//table.insert(a);} if(i==3){ cout<<“請輸入教職工的職務(wù)及級別”< a=new worker(number,name,sex,age,tel,department,job,rank);//table.insert(a);} insert(a);save(); } display();cout<<“***添加成功***”< { int j=0,k=1; char number[30]={0}; manage table;//定義一個對象 while(k) { system(“cls”); cout<<“**********************************高校人員管理系統(tǒng)***************************”< cout<<“ 請選擇需要操作:(選擇其他則退出)”< cout<<“ 1.添加人員信息”< cout<<“ 2.查詢?nèi)藛T信息”< cout<<“ 3.刪除人員信息”< cout<<“ 4.保存人員信息”< cout<<“ 5.顯示人員信息”< cout<<“ 6.修改人員信息”< cin>>j; switch(j) { //read(i); case 1://添加 { table.add(); //table.display(); }break; case 2://查詢 { cout<<“請輸入需要查詢的號碼”< cin>>number; table.search(number); }break; case 3: //刪除 { cout<<“請輸入需要刪除的號碼”< cin>>number; table.del(number); }break; case 4://保存 { cout<<“文件已保存”< }break; case 5://顯示 { table.display(); }break; case 6://修改 { cout<<“請輸入需要修改的號碼”< cin>>number; table.change(number); }break; default: system(“cls”);//清屏 break; // return 0; } cout<<“ 0.退出操作 cin>>k; } } 繼續(xù)操作”< 1. 1.C++課程設(shè)計題目:《學(xué)校人員信息管理系統(tǒng)》 用c++設(shè)計一個大學(xué)教師和學(xué)生管理程序,教師包括編號(a),姓名(c),職稱(d)和教研室數(shù)據(jù)(b)的數(shù)據(jù)輸入輸出;大學(xué)生包括編號(m),姓名(s),性別(t),班號(n),英語(e),高等數(shù)學(xué)(f)和數(shù)據(jù)結(jié)構(gòu)(g)三門課程成績輸入輸出和計算機平均分(ave);研究生包括編號,姓名,性別,班號,指導(dǎo)教師和研究方法數(shù)據(jù)輸入輸出;博士后數(shù)據(jù)的輸入輸出;博士后既是教師也是研究生.(用派生,繼承的方法可以做)2.功能如下圖所示: 學(xué)生成績管理系統(tǒng)主函數(shù)主菜單錄入學(xué)生信息保存信息到文件瀏覽學(xué)生信息按姓名或?qū)W號查詢信息刪除信息退出系統(tǒng) 3.部分代碼 #include int compareStr(char*str1,char*str2);//名字作為關(guān)鍵字,這個函數(shù)就用來比較 void addList(chainList *list);//同名的話,覆蓋,或者改為新名字加入 void deleteNode(chainList *node);//根據(jù)名字刪除 void editList(chainList *list,char *name);//要編輯的人名和新的資料 chainList *searchList(chainList *list,char*name);//只提供名字查詢(其他以后加入)//返回前一個節(jié)點的指針 void orderList(chainList *list);//按名字排序 void orderListByAge(chainList *list);//按年齡降序排列 void orderListBySex(chainList *list);//按照性別排列,女士優(yōu)先 void printStaticInfo(chainList*list);void printList(chainList *list);int main(){cout<<“tYou are welcome to the management system!”< cout<<“File's name:”< cin>>fileName; file.open(fileName);if(!file)//為何輸入不存在地文件后,機子變得很慢,而且沒有結(jié)果出來? {cout<<“File not found!System exit.”< return 1; } // cout<<“test”< fileRead(head,file);//讀入文件到鏈表 file.close();} printStaticInfo(head);char ctn; do {cout<<“main menu:”< addList(head); break;case '2': cout<<“Please input the person's name to be deleted:”< char nm[20]; cin>>nm; chainList *pdel; pdel=searchList(head,nm); char sure;//Make sure whether you want to delete the data sure='n'; if(!pdel->next) { cout<<“The person you input cann't be found”< } else{ cout<<“The persons infor follows:”< pdel->next->pl->print(); cout<<“Are you sure to delete it?Press y or n”< cin>>sure; if(sure=='y') { deleteNode(pdel); cout< } } break;case '3': cout<<“Please input the person's name:”< pp=searchList(head,nm1); if(pp->next) { cout<<“The person's infor follows:”< pp->next->pl->print(); cout<<“Now ,please edit the infors.”< editList(head,nm1); } else cout<<“The person can't be found!”< break; case '4': cout<<“Please input the person's name:”< char name[30]; cin>>name; chainList *p; p=searchList(head,name); if(p->next) { p->next->pl->print(); } else cout<<“The person can't be found!”< break; case '5': cout<<“You want to order the list by:”< cout<<“1.name 2.age 3.sex(lady first)”< char ch; cin>>ch; switch(ch) { case '1': cout<<“You choose to order the list by name.The result are as follows:”< orderList(head); printStaticInfo(head); break; case '2': cout<<“You choose to order the list by age.The result are as follows:”< orderListByAge(head); printStaticInfo(head); break; case '3': cout<<“You choose to order the list by sex.The result are as follows:”< orderListBySex(head); printStaticInfo(head); break; default: cout<<“Wrong choice!”< } break; case '6': printStaticInfo(head); break; default: cout<<“Wrong choice!”< } }while(ctn!='0');cout<<“Do you want to save the file?No,press n.Else,any other key.”< cout<<“Please input the file's name:”< cin>>fileName; ofstream fin; fin.open(fileName);//如果文件已經(jīng)存在,詢問是否覆蓋。如何知道是否存在 if(!fin) { cout<<“Can't open output file.n”; return 1; } fileWrite(head,fin); fin.close(); cout<<“File has been successfully saved!”< void fileRead(chainList *list,ifstream &ff){ chainList*p=list;int tp; } char nm[20];int ag;char sx;int slr;int grd; int e;int m;int g;int average;char schl[20];char sb[20];int teaYear;int aa=1;persons*psn;//插入人員指針 ff>>tp;while(tp){ ff>>ag; ff>>nm; ff>>sx; switch(tp){ case 1: ff>>grd;ff>>schl; psn=new student(ag,nm,sx,grd,schl,e,m,g,average); break;case 2: ff>>sb; ff>>teaYear; psn=new teacher(ag,nm,sx,sb,teaYear); break;case 3: ff>>slr; psn=new empoyee(ag,nm,sx,slr); break;} } chainList*s=new chainList(tp,psn);p->next=s;p=s;ff>>tp;void fileWrite(chainList *list,ofstream &ff){ chainList*p=list->next;while(p){ ff< typeOfPn<<“ ”< pl->age<<“ ”< pl->name<<“ ”< pl->sex<<“ ”; switch(p->typeOfPn) { case 1: ff<<((student*)p->pl)->grade<<“ ”<<((student*)p->pl)->school< break; case 2: ff<<((teacher*)p->pl)->subject<<“ ”<<((teacher*)p->pl)->yearsOfT< break; case 3: ff<<((empoyee*)p->pl)->salary< break; } p=p->next;} int aa=0;ff< int i=0;while((p1[i]==p2[i])&&p1[i]&&p2[i]) i++;if(p1[i]==p2[i]){ return 0;} else { if(p1[i]>p2[i]) return 1; else return-1;} } void addList(chainList *list)//添加節(jié)點 { char tp;int type;do{ cout<<“The person whose info you want to input is:”< 2.a teacher 3.a common employee”< char nm[20];int ag;char sx;int slr;int grd;char schl[20]; int e;int m; int g;int average;char sb[20];int teaYear;int aa=1;persons*psn;//插入人員指針 switch(tp){ case '0':aa=0; type=0; break;case '1': type=1; cout<<“name:”< cin>>nm; cout<<“age:”< cin>>ag; cout<<“male or female?m or f?”< cin>>sx; cout<<“The student's grade”< cin>>grd; cout<<“From which school:”< cin>>schl; cout<<“the score of english:”< cin>>e; cout<<“the score of math:”< cin>>m; cout<<“the score of sjjg:”< cin>>g; cout<<“average:”< psn=new student(ag,nm,sx,grd,schl,e,m,g,average); break; case '2':type=2; cout<<“name:”< cin>>nm; cout<<“age:”< cin>>ag; cout<<“male or female?m or f?”< cin>>sx; cout<<“subject field:”< cin>>sb; cout<<“Years as a teacher:”< cin>>teaYear; psn=new teacher(ag,nm,sx,sb,teaYear); break; case '3':type=3; cout<<“name:”< cin>>nm; cout<<“age:”< cin>>ag; cout<<“male or female?m or f?”< cin>>sx; cout<<“The employee's salary:”< cin>>slr; psn=new empoyee(ag,nm,sx,slr); break; default:type=6; aa=0; cout<<“Wrong choice!”< } chainList*p=list;//新節(jié)點在p所指的節(jié)點之前插入,if(aa) { int com; if(p->next) { com=compareStr(nm,p->next->pl->name); cout< } while(p->next&&com>0)//比p節(jié)點小或者p為空退出 { p=p->next; if(p->next) com=compareStr(nm,p->next->pl->name); } chainList *s=new chainList(type,psn); s->next=p->next; p->next=s; } }while(type); } void deleteNode(chainList *node){ chainList*ptemp=node->next; node->next=ptemp->next; delete ptemp;} void editList(chainList *list,char *name)//刪除,添加就是編輯。缺點:不想刪除的也被刪除了。{ chainList *pde;pde=searchList(list,name); char tp;int type;do{ cout<<“The person whose info you want to input is:”< cout<<“1.a student 2.a teacher 3.a common employee”< cout<<“0.Return to main menu.”< cin>>tp;//為什么一輸入字符就死循環(huán)?? char nm[20]; int ag; char sx; int slr; int grd; char schl[20]; int e; int m; int g; int average; char sb[20]; int teaYear; int aa=1; persons*psn;//插入人員指針 if(tp==1||tp==2||tp==3) deleteNode(pde);switch(tp){ case '0':aa=0;type=0;break;case '1': type=1;cout<<“name:”< cout<<“age:”< cin>>ag; cout<<“male or female?m or f?”< cin>>sx; cout<<“The employee's salary:”< cin>>slr; psn=new empoyee(ag,nm,sx,slr); break; default:type=6; aa=0; cout<<“Wrong choice!”< } chainList*p=list;//新節(jié)點在p所指的節(jié)點之前插入,if(aa) { int com; if(p->next) { com=compareStr(nm,p->next->pl->name); cout< } while(p->next&&com>0)//比p節(jié)點小或者p為空退出 { p=p->next; if(p->next) com=compareStr(nm,p->next->pl->name); } chainList *s=new chainList(type,psn); s->next=p->next; p->next=s; } }while(type); } chainList *searchList(chainList *list,char*name)//查找函數(shù) { chainList *p=list;int com;if(p->next) com=compareStr(name,p->next->pl->name); while(p->next&&com)//com為0值(即名字相同)或者p->next為空退出 { p=p->next;if(p->next)com=compareStr(name,p->next->pl->name);} return p;} void orderList(chainList *list){ chainList *p,*q;p=list;q=p->next;while(q->next&&p){ while((p->next!=q->next)&&p->next)//如果相等,則什么也不做 { int i=compareStr(q->next->pl->name,p->next->pl->name); i=-i; if(i>0)//字母順序小的插在前面 { chainList*s; s=q->next; q->next=s->next; s->next=p->next; p->next=s; p=s; break; } if(i==0)//字母順序相同的插到后面 { chainList*ss; ss=q->next; q->next=ss->next; p=p->next;//讓p永遠(yuǎn)指向插入位置前一個位置。 ss->next=p->next; p->next=ss; p=ss; break; } p=p->next; } p=list;//讓p重新指向頭節(jié)點。 if(q->next) q=q->next;//q前進一步。 } } void orderListByAge(chainList *list){ chainList*p,*q;p=list;q=p->next;while(q->next&&p){ while(p->next!=q->next)//如果相等,則什么也不做 { int i=q->next->pl->age-p->next->pl->age; if(i>0)//年齡大的插到用于比較的節(jié)點前面 { chainList*s; s=q->next; q->next=s->next; s->next=p->next; p->next=s; p=s; break; } if(i==0)//年齡相同的插到后面 { chainList*ss; ss=q->next; q->next=ss->next; p=p->next;//讓p永遠(yuǎn)指向插入位置前一個位置。 ss->next=p->next; p->next=ss; p=ss; break; } p=p->next; } p=list;//讓p重新指向頭節(jié)點。 if(q->next) q=q->next;//q前進一步。 } } void orderListBySex(chainList *list)//按性別排序,插入排序 { chainList*p,*q;p=q=list; while(q->next){ if(q->next->pl->sex=='f') { chainList*s; s=q->next; q->next=s->next;//刪除,然后插到前面 s->next=p->next; p->next=s; p=s; } q=q->next;} } void printStaticInfo(chainList*list){ int count,countS,countT,countE,countMale,countFemale;count=countS=countT=countE=countMale=countFemale=0;chainList*p=list->next;while(p){ p->pl->print(); count++; if(p->pl->sex=='m') countMale++; else countFemale++; switch(p->typeOfPn) { case 1: countS++; break; } case 2: countT++; break;case 3: countE++; break;} p=p->next; } cout<<“********************************************”< 部分截圖 1.信息的輸入 2.瀏覽學(xué)生信息 開始N開始YNY輸出所有信息返回主菜單錄入信息保存信息返回主菜單打開文件文件中有無信息結(jié)束3.按姓名或?qū)W號查詢信息 4.刪除信息 開始NY輸入姓名或?qū)W號開始NY輸入姓名或?qū)W號N 打開文件打開文件Y輸出信息(name==sign)||(number==sign))Y刪除信息(name==sign)||(number==sign))N返回主菜單返回主菜單 心得體會: 通過本次課程設(shè)計懂得了,學(xué)習(xí)計算機語言知識,要不斷實踐,不斷學(xué)習(xí)新的內(nèi)容,特別是課堂中沒有涉及的內(nèi)容要自主的去學(xué)習(xí)并學(xué)會運用。在今后的學(xué)習(xí)中我要加強自主學(xué)習(xí)的能力,加強動手能力。通過一星期的C++語言程序設(shè)計課程設(shè)計,我們從中受益匪淺,并且對C++語言程序設(shè)計這一門課程有了更深一步的認(rèn)識。在實習(xí)中,我們可以把這學(xué)期所學(xué)的理論知識和實踐聯(lián)系起來,在所要開發(fā)的項目中漸漸成長。雖然我們對這些C++語言知識運用得還不是很熟練,但是相信我們也在滴水穿石地成長起來。發(fā)現(xiàn)問題,提出問題,解決問題使我們從不足之處出發(fā),尋找新的方向。在課程設(shè)計中,我設(shè)計了一個學(xué)生信息管理系統(tǒng),它基本足了界面友好,易于操作的要求,因此更利于用戶操作方便,運行簡易,從而達(dá)到對人員管理更加有效系統(tǒng)的管理,并且速度更快內(nèi)容更直接地達(dá)到用戶所想要的效果。在該軟件中我們實現(xiàn)了對學(xué)生信息的輸入和存取、讀取,對學(xué)生相關(guān)信息的刪除等,并且可以按學(xué)號查詢學(xué)生的相關(guān)信息等的功能。但軟件中仍然存在一些不足,例如在輸入有關(guān)學(xué)生的數(shù)據(jù)時名字沒有限定,插入新的學(xué)生信息的程序還有待完善,菜單不美觀等。我一邊設(shè)計一邊探索,發(fā)現(xiàn)理論和實踐要充分地結(jié)合,是需要扎實的基本功的,這就表明學(xué)好基礎(chǔ)知識是理論付諸實踐的前提。在實習(xí)中我們學(xué)到了很多,希望在以后我們能充分利用這樣的機會充實自己,并希望這樣的機會能被更好更多地提供。 大學(xué)人員信息管理系統(tǒng) / 29 目錄 目錄.......................................................................................................................................1 設(shè)計任務(wù)書...............................................................................................................................2 課程設(shè)計任務(wù)...........................................................................................................................2 程序功能實現(xiàn):.......................................................................................................................3 1.程序主體............................................................................................................................3 2.流程圖:............................................................................................................................4 3.模塊說明............................................................................................................................4 3.1、主菜單四個選項......................................................................................................4 3.2、教師功能菜單..........................................................................................................5 3.3、學(xué)生功能菜單..........................................................................................................5 3.4、查找菜單..................................................................................................................6 4.源代碼及說明.................................................................................................................6 4.1、listStuTea 類............................................................................................................6 4.2、Menu 類................................................................................................................10 4.3、StudnTeach 類.......................................................................................................16 4.4、Student 類.............................................................................................................19 4.5、Teacher 類.............................................................................................................19 4.6、Person 類...............................................................................................................20 4.7、lkExecption類........................................................................................................21 4.8、MainStuTea類........................................................................................................23 5.操作方法和測試結(jié)果......................................................................................................24 5.1.1、教師信息顯示.....................................................................................................24 5.1.2、教師信息添加.....................................................................................................24 5.1.3、教師信息刪除.....................................................................................................25 5.1.4、教師信息查找.....................................................................................................26 5.2、學(xué)生菜單實現(xiàn)........................................................................................................28 6.設(shè)計體會..........................................................................................................................28 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 設(shè)計任務(wù)書 問題描述: 編寫程序?qū)Υ髮W(xué)里的人員進行管理。大學(xué)里的人員主要由學(xué)生、教師和在職進修教師(既是學(xué)生又是教師)組成,各類人員均有姓名、電話和住址等信息,學(xué)生另有所屬專業(yè)信息,教師另有所在系部、授課信息及工資信息,在職進修教師具備以上各類人員的信息。 要求: 1、設(shè)計Person類,保存各類人員均有的姓名、電話和住址等信息。 2、設(shè)計Student類或接口,繼承Person類,并添加所屬專業(yè)班級信息。 3、設(shè)計Teacher類接口,繼承Person類,并添加所在系部信息,授課信息及工資信息。 4、設(shè)計StudenTeacher類,繼承Student類接口和Teache類接口。其具備以上各類人員信息。 5、把創(chuàng)建的所有StudenTeacher對象按照其所屬系部依次組織在一個文件中方便查詢、修改、刪除及添加等操作。 6、對各類的對象進行信息輸入操作,輸入信息包括該類對象的所有信息。 7、對各類的對象進行輸出操作,顯示輸出該類對象的所有信息 課程設(shè)計任務(wù)及設(shè)計人 設(shè)計任務(wù): 大學(xué)人員信息管理系統(tǒng) 課程目的: 1、復(fù)習(xí)、鞏固Java語言的基礎(chǔ)知識,進一步加深對Java語言的理解和掌握; 2、課程設(shè)計為學(xué)生提供了一個既動手又動腦,獨立實踐的機會,將課本上的理論知識和實際有機的結(jié)合起來,鍛煉學(xué)生的分析解決實際問題的能力。提高學(xué)生適應(yīng)實際,實踐編程的能力; Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 3、培養(yǎng)學(xué)生在項目開發(fā)中團隊合作精神、創(chuàng)新意識及能力。 課程要求: 1、對系統(tǒng)進行功能模塊分析、控制模塊分析正確,符合課題要求,實現(xiàn)相應(yīng)功能;可以加以其他功能或修飾,使程序更加完善、合理; 2、系統(tǒng)設(shè)計要實用,編程簡練,可用,功能全面 3、說明書、流程圖要清楚 4、記錄設(shè)計情況(備查,也為編寫設(shè)計說明書作好準(zhǔn)備); 5、要求采用模塊化程序設(shè)計方法,及鋸齒型書寫格式,要求上機調(diào)試通過和按設(shè)計報告格式。 6、本設(shè)計需要實現(xiàn)Java的面向?qū)ο箝_發(fā)運用到的有Java的接口,Java的繼承,Java的異常處理,Java類的封裝。能夠在異常輸入的情況下,能正確處理。最后得到正確結(jié)果。 程序功能實現(xiàn):一、二、三、四、五、六、按照課程的要求實現(xiàn)學(xué)生和教師的基本信息的錄入。把輸入的教師和學(xué)生信息顯示出來。 有姓名和專業(yè)兩種查找方式去分別把老師和學(xué)生的信息查找并且顯示出來。刪除選項可以刪除相應(yīng)學(xué)生和老師信息。 用switch語句實現(xiàn)菜單功能,字符界面做到簡潔清晰 異常處理處理錯誤的輸入并且返回錯誤的提示,更正后填入正確數(shù)據(jù)。 1.程序主體 1、設(shè)計分析: 1.1、實體是實現(xiàn)程序思想的主要方式,首先應(yīng)該分為學(xué)生和老師2個入口,分別做查詢和信息添加、顯示、刪除和查找的功能。 1.2、學(xué)生和老師的信息輸入考慮要求多名信息考慮用對象數(shù)組去實現(xiàn)。但是對象數(shù)組的刪除不是本學(xué)期的內(nèi)容。且排序麻煩??紤]用其他方式實現(xiàn)信息錄入,查閱相關(guān)信息發(fā)現(xiàn)可以使用list對象實現(xiàn)信息錄入和刪除。 1.3、菜單使用switch語句實現(xiàn)菜單功能,菜單的相互調(diào)用實現(xiàn)功能的循環(huán)。 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 2.流程圖: 3.模塊說明 3.1、主菜單四個選項 學(xué)生入口: Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 這個模塊與學(xué)生功能模塊相連。 教師入口: 這個模塊與教師功能模塊相連 顯示全部信息: 這個模塊顯示所有的老師和學(xué)生信息 3.2、教師功能菜單 顯示教師信息: 這個模塊顯示輸入的教師信息,如果不存在提示輸入信息 添加教師信息: 這個模塊添加教師基本信息 刪除教師信息: 這個模塊按照序號刪除教師信息,如果不存在提示信息輸入 查找教師信息: 按照姓名和專業(yè)查找教師信息 返回上一級菜單: 返回主菜單 3.3、學(xué)生功能菜單 顯示學(xué)生信息: 這個模塊顯示輸入的教師信息,如果不存在提示輸入信息 添加學(xué)生信息: 這個模塊添加教師基本信息 刪除學(xué)生信息: 這個模塊按照序號刪除教師信息,如果不存在提示信息輸入 查找學(xué)生信息: 按照姓名和專業(yè)查找學(xué)生信息 返回上一級菜單: 返回主菜單 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 3.4、查找菜單 按照姓名查找: 查找模塊,按照姓名查找,如果不存在則提示輸入信息。按照專業(yè)查找: 查找模塊,按照專業(yè)查找,如果不存在則提示輸入信息。 返回上一級菜單: 返回主菜單 4.源代碼及說明 4.1、listStuTea 類 用來實現(xiàn)學(xué)生和教師數(shù)據(jù)添加、刪除、查找的方法 import java.util.*;import lkExecption.LKExecption;public class listStuTea extends StudnTeach{ final int SIZE = 50;//最大學(xué)生和教師人數(shù) listStuTea[] st = new listStuTea[SIZE];//學(xué)生和老師對象數(shù)組 Scanner into = new Scanner(System.in);List } public void FindStuName(){ } public void FindTeaName(){ String tpname;boolean zy = true;StudnTeach point;System.out.println(“請輸入教師姓名:”);tpname = into.nextLine();for(int i = 0;i } point =list1.get(i);if(tpname.equals(point.name)){ } //break;System.out.println(“要查找的姓名存在”);{ showTea(i,point);zy = false;//標(biāo)志位 } String tpname;boolean zy = true;StudnTeach point;System.out.println(“請輸入學(xué)生姓名:”);tpname = into.nextLine();for(int i = 0;i } if(zy)System.out.println(“沒有該學(xué)生”);if(getStuNumber()==0)System.out.println(“警告??!學(xué)生數(shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);point =list2.get(i);if(tpname.equals(point.name)){ } System.out.println(“要查找的姓名存在”);showStu(i,point);zy = false;Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 if(zy)System.out.println(“沒有該老師”);if(getTeaNumber()==0)System.out.println(“警告??!老師數(shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”); } { public void FindteaSpec()String tpSpec;boolean zy = true;StudnTeach point;System.out.println(“請輸入教師專業(yè):”);tpSpec = into.nextLine();for(int i = 0;i } if(zy)System.out.println(“沒有該專業(yè)的老師”);if(getTeaNumber()==0)System.out.println(“警告!!老師數(shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);point =list1.get(i);if(tpSpec.equals(point.getteaSpeciality())){ showTea(i,point);zy = false;//標(biāo)志位 } } { public void FindstuSpec()String tpStu;boolean zy = true;StudnTeach point;System.out.println(“請輸入學(xué)生專業(yè):”);tpStu = into.nextLine();for(int i = 0;i } if(zy)System.out.println(“沒有選修該專業(yè)的學(xué)生”);point =list2.get(i);if(tpStu.equals(point.getstuSpeciality())){ showStu(i,point);zy = false;//標(biāo)志位 } Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 if(getStuNumber()==0)System.out.println(“警告??!學(xué)生數(shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);} public void showStu(int n,StudnTeach point){ point=list2.get(n);System.out.println(“學(xué)生編號:”+n); System.out.println(“姓名:”+point.name+“ 性別:”+point.sex+“ 年齡:”+point.age); System.out.println(“電話:”+point.phone);System.out.println(“地址:”+point.address);System.out.println(“專業(yè):”+point.getstuSpeciality());System.out.println(“班級:”+point.getClassname());} public void showTea(int n,StudnTeach point){ point=list1.get(n);System.out.println(“教師編號:”+n); System.out.println(“姓名:”+point.name+“ 性別:”+point.sex+“ 年齡:”+point.age); System.out.println(“電話:”+point.phone);System.out.println(“地址:”+point.address);System.out.println(“專業(yè):”+point.getteaSpeciality());System.out.println(“工資:”+point.getPay());} public void addstu(int n)throws LKExecption { st[n] = new listStuTea();st[n].add();st[n].setClassname();st[n].setstuSpeciality();list2.add(st[n]);if(list2.size()!=0)System.out.println(“添加學(xué)生成功”); } public void addtea(int n)throws LKExecption { st[n] = new listStuTea();st[n].add();st[n].setteaSpeciality();Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } st[n].setPay();list1.add(st[n]);if(list1.size()!=0)System.out.println(“添加教師成功”); } public void delTea(){ } public void delStu(){ } System.out.println(“請輸入被刪的學(xué)生編號”);int k =into.nextInt();if(list2.size()<=k||k<0)System.out.println(“刪除失??!編號不存在請重新輸入!”);else { list2.remove(k);System.out.println(“刪除成功”);} System.out.println(“請輸入被刪的教師編號”);int k =into.nextInt();if(list1.size()<=k||k<0)System.out.println(“刪除失敗!編號不存在請重新輸入!”);else { list1.remove(k);System.out.println(“刪除成功”);} 4.2、Menu 類 字符菜單的實現(xiàn) import java.util.*;import lkExecption.LKExecption;public class Menu { Scanner into = new Scanner(System.in);int num = 0;List list=new ArrayList / 29 StudnTeach point = new listStuTea();//遍歷指針 public Menu()throws LKExecption{ } public int setIn(){ } void MainMenu()throws LKExecption//主菜單 { System.out.println(“================”);System.out.println(“1.教師入口”);System.out.println(“2.學(xué)生入口”);System.out.println(“3.顯示全部信息”);System.out.println(“4.退出管理”);switchMainMenu();} void FindMenu()//查找菜單 { } void MenuTea1_1()throws LKExecption//老師菜單 { System.out.println(“----------------”);System.out.println(“1.顯示教師信息”);System.out.println(“2.添加教師信息”);System.out.println(“3.刪除教師信息”);System.out.println(“4.查找教師信息”);System.out.println(“5.返回上一級菜單”);System.out.println(“----------------”);System.out.println(“1.按照姓名查找”);System.out.println(“2.按照專業(yè)查找”);System.out.println(“3.返回上一級菜單”);//switchMainMenu();int t;String tpNum = null;try{ } catch(NumberFormatException e){ } return t;t = new LKExecption().Num1Execption(tpNum);System.out.println(“請輸入選項”);tpNum = into.nextLine();t = Integer.parseInt(tpNum);MainMenu();Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } switchMenuTea1_1();void MenuStu1_1()throws LKExecption//學(xué)生菜單 { } void switchFindStuMenu()throws LKExecption//查找學(xué)生菜單 { } void switchFindTeaMenu()throws LKExecption//查找教師菜單 { int t;t = setIn();switch(t){ case 1: int t;t = setIn();switch(t){ case 1: } point.FindStuName();FindMenu();switchFindStuMenu();break;point.FindstuSpec();FindMenu();switchFindStuMenu();break;MenuStu1_1();switchMenuStu1_1();break;System.out.println(“輸入錯誤請重新輸入”);switchFindStuMenu();System.out.println(“----------------”);System.out.println(“1.顯示學(xué)生信息”);System.out.println(“2.添加學(xué)生信息”);System.out.println(“3.刪除學(xué)生信息”);System.out.println(“4.查找學(xué)生信息”);System.out.println(“5.返回上一級菜單”);switchMenuStu1_1();case 2: case 3: default: Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } void switchMainMenu()throws LKExecption//主菜單 { int t;t = setIn();switch(t){ case 1: MenuTea1_1();//老師顯示菜單 break;MenuStu1_1();//學(xué)生顯示菜單 break;if(point.getNumber()==0)System.out.println(“警告?。?shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);else{ } for(int i = 0;i point.showTea(i,point);point.showStu(i,point);for(int i = 0;i } point.FindteaSpec();FindMenu();switchFindTeaMenu();break;MenuTea1_1();switchMenuTea1_1();break;System.out.println(“輸入錯誤請重新輸入”);switchFindTeaMenu(); point.FindTeaName();FindMenu();switchFindTeaMenu();break;case 2: case 3: default: case 2: case 3: Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } } MainMenu();break;System.out.println(“歡迎再次光臨!大學(xué)人員信息管理系統(tǒng)!”);break;System.out.println(“輸入錯誤請重新輸入”);switchMainMenu();case 4: default: void switchMenuTea1_1()throws LKExecption { System.out.println(“----------------”);int t;t = setIn();switch(t){ case 1: if(point.getTeaNumber()==0)System.out.println(“警告?。〗處煍?shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);for(int i = 0;i FindMenu();switchFindTeaMenu();break;MainMenu();break;case 2: case 3: case 4: case 5: Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } } default: } System.out.println(“輸入錯誤請重新輸入”);switchMenuTea1_1();void switchMenuStu1_1()throws LKExecption { } System.out.println(“----------------”);int t;t = setIn();switch(t){ case 1: } if(point.getStuNumber()==0)System.out.println(“警告?。W(xué)生數(shù)據(jù)為空請?zhí)砑訑?shù)據(jù)”);for(int i = 0;i Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 4.3、StudnTeach 類 繼承于教師和學(xué)生接口實現(xiàn)它們抽象方法,且繼承人類屬性。 import java.util.*; import lkExecption.LKExecption;class StudnTeach extends Person implements Student,Teacher{ Scanner into = new Scanner(System.in);float pay = 0;//工資 String classname = null;//班級 String stuSpec = null;//老師專業(yè) String teaSpec = null;//學(xué)生專業(yè) void add()throws LKExecption { } public void addstu(int n)throws LKExecption{ } public void addtea(int n)throws LKExecption{ } public void setPay(){ String tpNum = null;try{ //add(); //setteaSpeciality();//setPay();//add(); //setClassname();//setstuSpeciality();setName();setSex();setAge();setPhone();System.out.println(“請輸入地址”);address = into.nextLine(); Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } } System.out.println(“請輸入工資:”);tpNum = into.nextLine();pay = Integer.parseInt(tpNum);catch(NumberFormatException e){ } pay = new LKExecption().Num1Execption(tpNum);public float getPay(){ } public void setClassname(){ } public String getClassname(){ } public void setstuSpeciality(){ } public String getstuSpeciality(){ } return stuSpec; System.out.println(“請輸入專業(yè):”);stuSpec = into.nextLine(); return classname; System.out.println(“請輸入班級:”);classname = into.nextLine(); return pay;Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) public void setteaSpeciality(){ System.out.println(“請輸入專業(yè):”); teaSpec = into.nextLine(); } public String getteaSpeciality(){ return teaSpec;} public void show(boolean b, int num, StudnTeach point){ } public void showStu(int num, StudnTeach point){ } public void showTea(int num, StudnTeach point){ } public int getStuNumber(){ return 0;} public int getTeaNumber(){ return 0;} public int getNumber(){ return 0;} public void delStu(){ } Java程序設(shè)計 / 29 大學(xué)人員信息管理系統(tǒng) / 29 } public void FindteaSpec(){ } public void FindTeaName(){ } public void FindstuSpec(){ } public void FindStuName(){ } public void delTea(){ } 4.4、Student 類 接口、學(xué)生的抽象方法 public interface Student { } abstract void setstuSpeciality();abstract String getstuSpeciality();abstract void setClassname();abstract String getClassname(); 4.5、Teacher 類 接口、教師的抽象方法 public interface Teacher { Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } abstract void setteaSpeciality();abstract String getteaSpeciality();abstract void setPay();abstract float getPay(); 4.6、Person 類 定義人類的基本屬性 import java.util.*;import lkExecption.LKExecption;public class Person { Scanner into = new Scanner(System.in);String name;int phone;String address;String sex;int age;public void setName(){ } public void setSex()throws LKExecption { } public void setAge(){ String tpAge = null;try{ System.out.println(“請輸入性別:”);sex = into.nextLine();if(sex.equals(“man”)||sex.equals(“woman”)){} else } catch(LKExecption lk){ } sex = new LKExecption().sexExecption(sex);throw new LKExecption();System.out.println(“請輸入姓名:”);name = into.nextLine();Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } } try{ } catch(NumberFormatException e){ } age = new LKExecption().NumExecption(tpAge);System.out.println(“請輸入年齡:”);tpAge = into.nextLine();age = Integer.parseInt(tpAge);public void setPhone(){ } String tpNum = null;try{ } catch(NumberFormatException e){ } phone = new LKExecption().Num1Execption(tpNum);System.out.println(“請輸入電話號碼:”);tpNum = into.nextLine();phone = Integer.parseInt(tpNum); 4.7、lkExecption類 自定義異常類 package lkExecption;import java.util.Scanner;public class LKExecption extends Exception { Scanner into = new Scanner(System.in);public String sexExecption(String mg){ String str;boolean pd = true;do{ System.out.println(mg+“ 不是正確的性別,正確的性別為 man 或者 woman”);str = into.next();Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 } //System.out.println(mg+“ 驗證”); if(str.equals(“man”)||str.equals(“woman”)){ } }while(pd);return str;pd = false;public int NumExecption(String mg){ String num = null;int tpNum = 0;boolean pd = true;System.out.println(mg+“ 請正確的數(shù)字或者不在范圍內(nèi)!請重新輸入!”);do{ try{ } catch(NumberFormatException e){ System.out.println(num+“ 請正確的數(shù)字或者不在范圍內(nèi)!請重新輸num = into.nextLine();tpNum = Integer.parseInt(num);if(tpNum>120||tpNum<0)//范圍判斷 throw new NumberFormatException();else pd = false;入!”); } } public String charExecption(String mg){ final String[] str={“null”};//這里指定 規(guī)定字段 boolean pd = true;do{ System.out.println(mg+“ 不是正確字段,請輸入指定的字段”);mg = into.next();for(int i =0;i / 29 } } } }while(pd);return mg;public int Num1Execption(String mg){ } String num;int tpNum = 0;System.out.println(mg+“ 不是數(shù)字!請輸入數(shù)字!”);do{ try{ } catch(NumberFormatException e){ System.out.println(mg+“ 不是數(shù)字!請輸入數(shù)字!”);} num = into.nextLine();tpNum = Integer.parseInt(num);break;}while(true);return tpNum;4.8、MainStuTea類 主函數(shù)調(diào)用 import lkExecption.LKExecption;public class MainStuTea { } public static void main(String[] args)throws LKExecption { Menu lk = new Menu();} Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 5.操作方法和測試結(jié)果 5.1.1、教師信息顯示 選擇一進入教師信息入口 選擇一進入教師信息查看 因為我們沒有添加教師信息,所以他要求我們添加教師信息 5.1.2、教師信息添加 選擇二進入教師信息添加 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 教師信息添加成功,如果不是指定字段輸入,出現(xiàn)異常則重新輸入 如下為添加的信息輸入顯示 5.1.3、教師信息刪除 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 5.1.4、教師信息查找 專業(yè)查找 現(xiàn)在添加三個教師信息,如下顯示 首先使用專業(yè)查找,我們查找computer專業(yè)的 Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 查找其他math專業(yè) 查找不存在的專業(yè) 姓名查找 再添加一個同名的教師 查找lisi Java程序設(shè)計 大學(xué)人員信息管理系統(tǒng) / 29 5.2、學(xué)生菜單實現(xiàn) 學(xué)生信息采取同樣測試 6.設(shè)計體會 這個課程設(shè)計可以的設(shè)計心得,可謂十分波折。全部的源代碼都出自自己,其中的list排列我們還沒有學(xué)習(xí)。在這里要感謝google感謝baidu。沒有他們就沒有今天的代碼。當(dāng)然網(wǎng)上只有相似的課題沒有相同的代碼,list排列經(jīng)過自己一小時的摸索可以了解了部分的運用,首先寫了一個test類來測試這個用法 import java.util.ArrayList;import java.util.LinkedList;import java.util.Iterator;import java.util.List;import java.util.Scanner; public class test { public static void main(String[] args){ System.out.println(“開始:”);String a = “A”, b = “B”, c = “C”, d = “D”, e = “E”;List / 29 list.set(1, b);// 將索引位置為1的對象e修改為對象b list.add(2, c);// 將對象c添加到索引位置為2的位置 list.add(e);list.remove(1);Iterator System.out.println(“結(jié)束!”);} } 再想了一下把它添加進了listStuTea對象,全都的代碼完成用了一天的時間,在原來想起寫500多行的代碼幾乎是不可能的,但是在這個課程設(shè)計中實現(xiàn)了。這個課程設(shè)計真的使自己學(xué)到了很多的東西。在接口的使用還不是很好的和實際模型很多的結(jié)合起來,這是鍛煉較少的原因,前期的分析也幼稚的表現(xiàn)了自己在這方面的不足,在層次結(jié)構(gòu)上浪費了較多的時間。總之在這方面的鍛煉還是比較少,我想不管是在以后布置下來的課程設(shè)計才去編寫代碼,這是不可行的,得在平時多多鍛煉。 Java程序設(shè)計 阜新市社會治安綜合治理委員會辦公室 阜新市財政局 阜新市公安局 阜新市司法局 阜綜治發(fā)[2011]號 關(guān)于進一步加強刑釋解教人員 銜接管理工作的通知 各縣區(qū)綜治辦,財政局、公安(分)局、司法局: 做好刑釋解教人員安置幫教工作是推進社會管理創(chuàng)新的重要內(nèi)容,其中對出監(jiān)出所人員的銜接管理是一個關(guān)鍵性 工作環(huán)節(jié)。中共中央辦公廳、國務(wù)院辦公廳《關(guān)于進一步加 強刑滿釋釋放解除勞教人員安置幫教工作的意見》(中辦發(fā) ?2010?5號)明確規(guī)定,各級黨委和政府要將刑釋解教人 員安置幫教經(jīng)費納入同級財政預(yù)算,切實予以保障,由基層 司法行政機關(guān)協(xié)調(diào)有關(guān)部門將釋解人員接回原籍或居住地,幫期順利回歸社會。為深入貫徹落實中央兩辦文件精神和省委省政府的決策部署,全市從2011年7月1日起,對每名刑釋解教人員實行必接必控,做到“無縫銜接”。根據(jù)《關(guān)于進一步加強刑釋解教人員銜接管理工作的通知》(遼綜治辦發(fā)?2011?20號)文件要求,結(jié)合我市工作實際,現(xiàn)就進一步加強刑釋解教人員銜接管理工作相關(guān)要求通知如下: 一、認(rèn)真做好服刑在教人員信息核查反饋工作 監(jiān)獄、勞教所、看守所要指定專管部門,安排專管人員負(fù)責(zé)服刑在教人員的信息錄入工作,要保證服刑在教人員相關(guān)信息隨時變動隨時錄入。對錄入的信息要認(rèn)真核查,確保真實可靠。核查中發(fā)現(xiàn)的“三假”(假姓名、身份、住址)人員,各監(jiān)所要開展專項工作,教育其交待真實信息。各司法所也要及時核查、反饋監(jiān)所提供的人員信息,保證服刑在教人員信息準(zhǔn)確率。監(jiān)獄、勞教所、看守所必須于服刑在教人員釋解前1個月,在中央綜治委刑釋解教人員安置幫教工作信息系統(tǒng)平合上填寫其服刑在教期間的表現(xiàn)、危險性評估、釋放日期等相關(guān)情況信息,司法所要及時反饋接續(xù)幫教的準(zhǔn)備情況。監(jiān)獄、勞教所、看守所與司法所之間按照規(guī)定通過網(wǎng)上信息平臺進行溝通,取得司法所確定的銜接人員身份信息,并在網(wǎng)上信息平臺留存監(jiān)所聯(lián)系人及聯(lián)絡(luò)電話,確定接回日期。 二、建立完善服刑在教人員出監(jiān)出所交接制度 縣、區(qū)安置幫教辦公室、鄉(xiāng)鎮(zhèn)(街道)司法所應(yīng)安排一名安置幫教工作人員,并動員刑釋解教人員親屬一同按期到監(jiān)所,由監(jiān)獄、勞教所、看守所將刑釋解教人員交與司法所派出的銜接人員,帶回其戶籍地或長期居住地,到司法所報到。司法所要及時對刑釋解教人員落實接續(xù)幫教措施,并協(xié)調(diào)有關(guān)部門幫助其解決生活、就業(yè)等實際困難。對于個別未能按期報到的刑釋解教人員,司法所要上門辦理登記手續(xù),并對流動和人戶分離的刑釋解教人員建立動態(tài)信息登記制度,落實“雙列管”和異地幫教措施。 三、分級保證銜接經(jīng)費的落實 刑釋解教人員的銜接補助經(jīng)費由各級財政部門負(fù)責(zé)安排。各級黨委和政府要將刑釋解教人員安置幫教經(jīng)費納入同級財政預(yù)算,切實予以保障,由基層司法行政機關(guān)協(xié)調(diào)有關(guān)部門將釋解人員接回原籍或原居住地,幫其順利回歸社會。對于市直監(jiān)獄、勞教所、看守所刑滿釋放解除勞教并且戶籍(或長期居住地)在我省行政區(qū)域內(nèi)人員的銜接補助經(jīng)費由市財政保障。市直監(jiān)獄、勞教所、看守所根據(jù)預(yù)刑釋解教人員統(tǒng)計,要結(jié)合我市實際參照省安幫辦下發(fā)的遼寧省省直監(jiān)獄勞教所刑釋解教人員銜接補助費標(biāo)準(zhǔn)(附表1)編制專項經(jīng)費預(yù)算,按規(guī)定上報市財政局。市財政局確定專項經(jīng)費數(shù)額后分別撥付給監(jiān)獄、勞教所和公安局,市監(jiān)獄、勞教所和市公安局財務(wù)部門實名下?lián)艿礁鞅O(jiān)所,各監(jiān)所嚴(yán)格按照補助標(biāo)準(zhǔn)支付給銜接人員,每次補助僅限兩人,多者經(jīng)費自理。銜接文書(三聯(lián)單)分為存根聯(lián)、證明(回執(zhí))聯(lián)、補助費支付聯(lián),市安置幫教工作領(lǐng)導(dǎo)小組辦公室遵照(附表 2)遼寧省刑釋解教人員銜補助經(jīng)費三聯(lián)單存根聯(lián)、證明(回執(zhí))聯(lián)、補助費支付聯(lián),專門制定銜接工作文書下發(fā)各有關(guān)部門。派到監(jiān)所的銜接人員須持由當(dāng)?shù)厮痉ㄋ_具的證明(回執(zhí))聯(lián)、補助費支付聯(lián)文書(附表2)于釋放當(dāng)日上午到監(jiān)所接人。補助支付聯(lián)交監(jiān)所用于支付憑證,證明(回執(zhí))聯(lián)由監(jiān)所簽章后帶回交縣(區(qū))司法局存檔,各監(jiān)所要建立補助經(jīng)費支付臺賬,詳細(xì)記錄每筆經(jīng)費支出。各縣(區(qū))要根據(jù)中辦發(fā)[2010]5號文件精神,重點解決“三無”(無家可歸、無親可投、無業(yè)可就)人員過渡期性銜接安置問題。 四、切實加強督查和責(zé)任追究 司法行政機關(guān)和公安機關(guān)要切實加強對銜接管理工作的檢查監(jiān)督,及時解決存在問題,查處失職單位和人員。各縣(區(qū))司法局每月5日前將上月釋解人員銜接情況統(tǒng)計表報市安幫辦,市安幫辦于每季度第一個月5日前將統(tǒng)計表報省安幫辦(附表3)各監(jiān)所要在每月5日前將銜接統(tǒng)計表報省監(jiān)獄局、勞教局獄(所)政管理部門和省公安廳監(jiān)管總隊,省監(jiān)獄局、勞教局獄(所)政管理部門和省公安廳監(jiān)管總隊于每季度第一個月5日前將統(tǒng)計表報省安幫辦(附表4)。市 安幫辦每季度將存在的問題通報有關(guān)單位并報市綜治辦。市綜治辦按照省綜治委的部署將此項工作列入綜治考評的重要內(nèi)容,對嚴(yán)重違反規(guī)定的縣、區(qū)及監(jiān)所,要給予批評警告,并限期整改,問題特別嚴(yán)重的將對其實施一票否決。 附表: 1、《遼寧省省直監(jiān)獄勞教所刑釋解教人員銜接費 用發(fā)放標(biāo)準(zhǔn)測算表》 2、《遼寧省刑釋解教人員銜接幫助經(jīng)費三聯(lián)單》 3、《遼寧省刑釋解教人員銜接統(tǒng)計表一》 4、《遼寧省刑釋解教人員銜接情況統(tǒng)計表二》 阜新市社會治安綜合阜新市財政局 治理委員會辦公室 阜新市公安局阜新市司法局 2011年9月23日第三篇:c++學(xué)校人員信息管理系統(tǒng)
第四篇:人員信息管理系統(tǒng) java課程設(shè)計
第五篇:關(guān)于進一步加強刑釋解教人員