/*題目:學生考勤管理系統
考勤資訊記錄了學生的缺課情況,它包括:缺課日期、第幾節課(連續多節課用 begin-end 的形式表示)、課程名稱(課程名稱中不會出現空格)、學生姓名、缺課型別(遲到、早退、請假及曠課)。試設計一考勤管理系統,使之能提供以下功能:
1. 錄入學生的缺課記錄:從鍵盤輸入資料(提示:為避免重複從鍵盤輸入資料,測試時可將資料儲存在檔案中,利用輸入重定向功能讀入),輸入格式為:
缺課日期第幾節課課程名稱學生姓名缺課型別
每行一條紀錄。
例如:2008-04-29 3-4 c++程式設計實驗張三遲到
2008-04-28 3-4 c++程式設計李四曠課
2.修改某個學生的缺課記錄:可以對缺課紀錄的任意部分進行修改。
3.查詢某個學生的缺課情況:查詢結果按照日期公升序排序,同一天內按照所缺課程的時間公升序排序。
4.統計某段時間內(以天為單位),曠課學生姓名及曠課節數,查詢結果先按曠課節數降序排序,曠課節數相同的學生按姓名公升序排序;
5.統計某段時間內,有學生曠課的課程及曠課人次,按曠課人次由多到少排序,曠課人次相同的課程按課程名稱公升序排序;
6.系統以選單方式工作。
通過幾天的奮鬥終於將這個設計做出來了,如下是該程式的詳細過程*/
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
struct student_info;
istream& student_info::read(istream& in)
istream& read_record(istream& in,vector& s)//第乙個模組輸入學生的缺課記錄
in.clear();//將記錄的錯誤狀態恢復正確,以繼續讀取記錄
return in;
} bool is_empty(vector& s)//判斷輸入學生的記錄是否為空,為空則返回真
bool compare(student_info& x,student_info& y)//按照時間排序,若日期相等則看課程時間
else if(x.year==y.year&&x.month==y.month&&x.day!=y.day)
else if(x.year==y.year&&x.month!=y.month)
else
} bool time(const student_info& stud,int y1,int m1,int d1,int y2,int m2,int d2)//篩選符合輸入時間段的資料
void rewrite(vector& s)//第二個模組修改某個學生的缺課情況
{ if(!is_empty(s))
{int n,m,j,k;
map > s_name;
map >::iterator ix2;
vector::iterator ix,iter,itera;
string name定義這些引數和迭代器必須在swithc外,不然它可能被忽略跳過
while(true)
cout<< cin>>n; if(n==1) s_name.clear清空map容器 for(ix=s.begin();ix!=s.end();++ix) s_name[(*ix).name].push_back(*ix); s.clear(); cout<<"請輸入該學生的姓名: "; cin>>name; cout ix2=s_name.find(name找到符合名字要求的資料,並顯示出 for(iter=(*ix2).second.begin();iter!=(*ix2).second.end();++iter) cout<<(*iter).year<<"-"<<(*iter).month<<"-"<<(*iter).day<<"\t"; cout<<(*iter).lesson1<<"-"<<(*iter).lesson2; cout<<"\t"<<(*iter).course<<"\t"<<(*iter).name<<"\t"<<(*iter).type< itera=(*ix2).second.begin(); cout<<"請輸入要更改記錄的序號: "; cin>>j; for(k=0;k!=j-1;++k) itera; cout<< cin>>m; switch(m) case 1: cout<<"請輸入更改的日期(年月日): "; cin>>(*itera).year>>(*itera).month>>(*itera).day; break; case 2: cout<<"請輸入更改的節次(l1、l2): "; cin>>(*itera).lesson1>>(*itera).lesson2; 一.應用程式名稱 student.exe 二.應用程式的主題 設計目的 應用程式的主題是管理好學生成績,設計目的是進一步掌握和實踐c語言程式設計。三 應用程式簡介 1.基本結構 2.基本內容 編寫乙個成績管理程式。每個學生的資訊包含學生學號 姓名 性別和6門課程成績。1 學生資訊建立 順序儲存和鏈式... 一 資訊功能模組結構塊圖 職工資訊管理系統 1 檔案 a.匯入檔案 b.儲存檔案 c.退出系統 d.關於我們 2 入錄 3 修改 4 插入 a.乙個員工 b.乙個部門 5 刪除 a.乙個部門 b.乙個員工 c.乙個職稱 d.所有資訊 6 查詢 a.按卡號查 b.職工資訊 c.按職稱查 d.各種工資 ... 內蒙古科技大學課程設計任務書 c 程式設計 程式設計說明書 題目 職工資訊管理系統 姓名 安靜 學號 1376807343 指導教師 王麗穎 日期 2014年12月25日 正文 每個學生在教師提供的課程設計題目中任意選擇一題,獨立完成,題目選定後不可更換。職工資訊管理系統設計 職工資訊包括職工號 姓...C語言學生資訊管理系統
C語言資訊管理系統
C 職工資訊管理系統