学生考勤管理系统源代码汇编.docx
- 文档编号:4551300
- 上传时间:2022-12-06
- 格式:DOCX
- 页数:14
- 大小:18.30KB
学生考勤管理系统源代码汇编.docx
《学生考勤管理系统源代码汇编.docx》由会员分享,可在线阅读,更多相关《学生考勤管理系统源代码汇编.docx(14页珍藏版)》请在冰豆网上搜索。
学生考勤管理系统源代码汇编
#include
#include
#include
usingnamespacestd;
classtime
{public:
time(inty=0,intm=0,intd=0)
{year=y;month=m;day=d;}
~time(){}
protected:
intyear,month,day;
};
//信息类
classxinxi:
publictime
{public:
xinxi(){tiaoshu++;}
~xinxi(){tiaoshu--;}
voidsetname(char*n){strcpy(name,n);}
voidsettime(inty,intm,intd){year=y;month=m;day=d;}
voidsetqklx(char*qk){strcpy(queke,qk);}
voidsetjieci(char*jc){strcpy(jieci,jc);}
voidsetkechen(char*kc){strcpy(kechen,kc);}
char*getname(){char*n;n=name;returnn;}
char*getqklx(){char*qk=queke;returnqk;}
char*getjieci(){char*jc;jc=jieci;returnjc;}
char*getkechen(){char*gk;gk=kechen;returngk;}
int*gettime();
private:
charname[20];//姓名
charjieci[3],kechen[10],queke[10];
inttm[3];
staticinttiaoshu;
};
intxinxi:
:
tiaoshu=0;
int*xinxi:
:
gettime()
{
int*t;
t=tm;
tm[0]=year;
tm[1]=month;
tm[2]=day;
returnt;
}
classqkechen:
publicxinxi
{public:
qkechen(){kcshu++;}
~qkechen(){kcshu--;}
intgetrc(xinxist1[],intn,intj);
charqkn[20];//公有数据成员
private:
intrenci;
staticintkcshu;//静态数据成员
};
intqkechen:
:
kcshu=0;
intqkechen:
:
getrc(xinxist1[],intn,intj)
{
renci=0;
renci++;
for(inti=0;i if(*(st1[i+1].gettime()+1)==*(st1[j].gettime()+1)&&*(st1[i+1].gettime()+2)== *(st1[j].gettime()+2)) if(strcmp(qkn,st1[i].getkechen())==0) renci++; returnrenci; } classqstu: publicxinxi {public: qstu(){qst++;} ~qstu(){qst--;} voidprint(xinxi&st1); intgetjs(xinxist1[],intn,intj); intsetjs(intjs=0) {jieshu=js;} charqstn[20]; private: intjieshu; staticintqst;//静态数据成员 }; intqstu: : qst=0; voidqstu: : print(xinxi&st1) { cout<<"|缺课日期|"<<"第几节课|"<<"课程名称|"<<"缺课类型|"< cout<<"|"<<*st1.gettime()<<"|"<<*(st1.gettime()+1)<<*(st1.gettime()+2)<<"|"< < } intqstu: : getjs(xinxist1[],intn,intj) { inti=0,js=0; xinximin; if(*(st1[j].getjieci()+2)! ='\0') js=+2; else js++; for(i=0;i if(*(st1[i+1].gettime()+1)==*(st1[j].gettime()+1)&&*(st1[i+1].gettime()+2)==*(st1[j].gettime()+2)) if(strcmp(st1[i+1].getname(),qstn)==0) { if(*(st1[i].getjieci()+2)! ='\0') js=+2; else js++; } jieshu=js; returnjieshu; } //函数声明 intshuru(xinxist1[]); voidchaxun(xinxist1[],qstuqt[]); voidxiugai(xinxist1[],intn); voidtongji1(xinxist1[],qstuqt1[]); voidtongji2(xinxist1[],qkechenqk1[]); voidcaidan(); voidxiansi(xinxi&st1); voidsetqstn(xinxist1[],qstuqt1[],intn); voidsetqkn(xinxist1[],qkechenqk[],intn); //全局变量 intg,k=1,b=1; intq=-1; charname[20],kechen[10],queke[10],jieci[3]; inty,m,d; //主函数 intmain() { xinxitl[15];//定义15条信息类对象 qstuqt[10]; qkechenqk[6]; intch; while (1) {cout<<"********欢迎进入学生考勤管理系统! *********"< caidan(); cout<<"--------请选择菜单项: "< cin>>ch; switch(ch) {case1: g=shuru(tl);break; case2: xiugai(tl,g);break; case3: chaxun(tl,qt);break; case4: tongji1(tl,qt);break; case5: tongji2(tl,qk);break; case6: exit(0); } } return0; } voidcaidan() {system("colorA"); cout<<"*************************************************************"< cout<<"*学生考勤管理系统*"< cout<<"*************************************************************"< cout<<"1.-------------录入学生的缺课记录---------------------------*"< cout<<"3.-------------查询学生的缺课情况---------------------------*"< cout<<"4.--------统计某段时间内旷课学生姓名及旷课节数--------------*"< cout<<"5.--------统计某段时间内旷课的课程及旷课人次----------------*"< cout<<"6.----------------退出系统----------------------------------*"< } //输入函数 intshuru(xinxist1[]) {chara; cout<<"------输入开始! ----"< do{q++; cout<<"请输入学生姓名"< cin>>name; st1[q].setname(name); cout<<"请输入课程名称"< cin>>kechen; st1[q].setkechen(kechen); cout<<"请输入缺课日期"< cin>>y>>m>>d; st1[q].settime(y,m,d); cout<<"请输入缺课类型"< cin>>queke; st1[q].setqklx(queke); cout<<"请输入缺课节次"< cin>>jieci; st1[q].setjieci(jieci); cout<<"是否还要继续输入: (y/n)"< cin>>a; }while(a=='y'); returnq+1; } voidxiugai(xinxist1[],intn) { intk=1,j=0,a[10]; intflgh; inth; while(k==1) {cout<<"请输入你要修改缺课记录的学生姓名"< cin>>name; flgh=0; for(inti=0;i if(strcmp(name,st1[i].getname())==0) do{a[j]=i; cout<<"1.修改日期2.修改节次3.修改课程名称4.修改缺课类型"< cout<<"请输入要选择的数值(1,2,3,4)"< intb; cin>>b; if(b==1) {cout<<"请输入新日期"< cin>>y>>m>>d; st1[i].settime(y,m,d); } elseif(b==2) {cout<<"请输入新节次"< cin>>jieci; st1[i].setjieci(jieci); } elseif(b==3) {cout<<"请输入新课程名称"< cin>>kechen; st1[i].setkechen(kechen); } elseif(b==4) {cout<<"请输入新缺课类型"< cin>>queke; st1[i].setqklx(queke); } flgh=1;j++; }while(b<1||b>4); if(flgh==0) {cout<<"没有你要找的学生姓名,请重试要退出请按0"< cin>>k; } else {cout<<"还要继续吗(1\0)退出请按0"< cin>>k; } } for(inti=0;i { h=a[i]; xiansi(st1[h]); } } voidchaxun(xinxist1[],qstuqt[]) { charn='y'; intu[10]; while(n=='y') { intj=0; cout<<"输入你要查询的学生姓名: "< cin>>name; inti=0; for(;i if(strcmp(name,st1[i].getname())==0) { u[j]=i; j++; } if(j==0) { cout<<"没有你所要的学生名字! ";//没有找到 cout<<"是否退出退出请按n\n"; cin>>n; } for(inta=0;a { //只有一条信息 if(j<2) {i=u[a]; cout<<"|缺课日期|"<<"第几节课|"<<"课程名称|"<<"缺课类型|"< cout<<"|"<<*st1[i].gettime()<<"|"<<*(st1[i].gettime()+1)<<"|"<<*(st1[i].gettime()+2)<<"|"< } //两条信息以上排序 else { i=u[a]; if(*(st1[i].gettime()+1)<*(st1[i+1].gettime()+1)) qt[i].print(st1[i]); else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)<*(st1[i+1].gettime()+2)) qt[i].print(st1[i]); else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)==*(st1[i+1].gettime()+2)) if(strcmp(st1[i].getjieci(),st1[i+1].getjieci())==-1) qt[i].print(st1[i]); } cout<<"是否继续查询(y/n)继续请按y退出按n"< cin>>n; } } } //统计某段时间内旷课学生姓名及旷课节数 voidtongji1(xinxist1[],qstuqt1[]) { intd1=0,js=0; xinximin; if(g==0) cout<<"没有你要统计的学生信息请返回菜单录入学生缺课信息"< elseif(g==1) { cout<<"姓名: "< if(*(st1[0].getjieci()+2)! ='\0') js=+2; else js++; cout<<"节数: "< } else //信息按时间排序 {inti=0; for(;i<(g-1);i++) { if(*(st1[i].gettime()+1)<*(st1[i+1].gettime()+1)) {min=st1[i];st1[i]=st1[i+1];st1[i+1]=st1[i];} else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)<*(st1[i+1].gettime()+2)) {min=st1[i];st1[i]=st1[i+1];st1[i+1]=st1[i];} else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)==*(st1[i+1].gettime()+2)) d1++; } for(intj=0;j<(g-d1);j++) { cout<<*st1[j].gettime()<<*(st1[j].gettime()+1)<<*(st1[j].gettime()+2)< for(i=0;i {setqstn(st1,qt1,g); cout<<"姓名: "< cout<<"节数: "< } } } } //统计某段时间内旷课的课程及旷课人次 voidtongji2(xinxist1[],qkechenqk1[]) {intd1=0,rc=0; xinximin; if(g==0) cout<<"没有你要统计的学生信息请返回菜单录入学生缺课信息"< elseif(g==1) { cout<<"课程名: "< rc++; cout<<"人数: "< } else { inti=0; for(;i { if(*(st1[i].gettime()+1)<*(st1[i+1].gettime()+1)) {min=st1[i];st1[i]=st1[i+1];st1[i+1]=st1[i];} else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)<*(st1[i+1].gettime()+2)) {min=st1[i];st1[i]=st1[i+1];st1[i+1]=st1[i];} else if(*(st1[i].gettime()+1)==*(st1[i+1].gettime()+1)&&*(st1[i].gettime()+2)==*(st1[i+1].gettime()+2)) d1++; } for(intj=0;j<(g-d1);j++) { cout<<*st1[j].gettime()<<*(st1[j].gettime()+1)<<*(st1[j].gettime()+2)< for(i=0;i {setqkn(st1,qk1,g); cout<<"课程名: "< cout<<"人数: "< } } } } voidxiansi(xinxi&st1) { cout<<"|缺课日期|"<<"第几节课|"<<"课程名称|"<<"学生姓名|"<<"缺课类型|"< cout<<"|"<<*(st1.gettime())<<"|"<<*(st1.gettime()+1)<<*(st1.gettime()+2) <<"|"< } //设置缺课学生名 voidsetqstn(xinxist1[],qstuqt1[],intn) { inti=0; for(;i {if(i==0) strcpy(qt1[0].qstn,st1[i].getname()); elseif(strcmp(st1[i].getname(),st1[i+1].getname())! =0) {strcpy(qt1[i].qstn,st1[i].getname()); k++; } 众上所述,我们认为: 我们的创意小屋计划或许虽然会有很多的挑战和困难,但我们会吸取和借鉴“漂亮女生”和“碧芝”的成功经验,在产品的质量和创意上多下工夫,使自己的产品能领导潮流,领导时尚。 在它们还没有打入学校这个市场时,我们要巩固我们的学生市场,制作一些吸引学生,又有使学生能接受的价格,勇敢的面对它们的挑战,使自己立于不败之地。 } 夏日的街头,吊带装、露背装、一步裙、迷你裙五彩缤纷、争妍斗艳。 爱美的女孩们不仅在服饰搭配上费尽心机,饰品的选择也十分讲究。 可惜在商店里买的项链、手链、手机挂坠等往往样式平淡无奇,还容易出现雷同现象。 } 加拿大beadworks公司就是根据年轻女性要充分展现自己个性的需求,将世界各地的珠类饰品汇集于“碧芝自制饰品店”内,由消费者自选、自组、自制,这样就能在每个消费者亲手制作、充分发挥她们的艺术想像力的基础上,创作出作品,达到展现个性的效果//设置有缺课学生的课程名 voidsetqkn(xinxist1[],qkechenqk[],intn) 可见“体验化消费”广受大学生的欢迎、喜欢,这是我们创业项目是否成功的关键,必须引起足够的注意。 { inti=0; for(;i 1、DIY手工艺市场状况分析{ 木质、石质、骨质、琉璃、藏银……一颗颗、一粒粒、一片片,都浓缩了自然之美,展现着千种风情、万种诱惑,与中国结艺的朴实形成了鲜明的对比,代表着欧洲贵族风格的饰品成了他们最大的主题。 if(i==0) 2、Google网站www。 people。 com。 cnstrcpy(qk[0].qkn,st1[i].getkechen()); 精明的商家不失时机地打出“自己的饰品自己做”、“DIY(DoItYourself)饰品、真我个性”的广告,推出“自制饰品”服务,吸引了不少喜欢标新立异、走在潮流前端的年轻女孩,成为上海的时尚消费市场。 其市场现状特点具体表现为: elseif(strcmp(st1[i].getkechen(),st1[i+1].getkechen())! =0) {strcpy(qk[i].qkn,st1[i+1].getkechen()); 300-400元1632%b++; } } 2、消费者分析}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 考勤 管理 系统 源代码 汇编
![提示](https://static.bdocx.com/images/bang_tan.gif)