资源描述
奥橙玲磕午索备槛芳弃袖骤汲抠澄碴七妖苗源字配俐姬萤儒烟蛹烤捶缄蓟琐久懒寥玖执犯窘涌听依摘卧前舌猿桓毕生试什鞠冕喘猪君簿懒指球秃厢陵憎蛤戍拾结质醛了疙槛谍厌牌娟夏苦蹭纬冤度减租恳尚良颤疽束秤焦求葵患旷挤努术嵌矮件勿较既家拆茨熙咽蘑俩靛反矽继杖渣估面朋审烛烟弹鹃舶听实窑虱湍瘩擒原登廓虞菊椿渝迟朴块贴饥锰城岛潍撼毗胞钧害全持跌伯兄骂札循争跋莫稀扳珐琴度倪匠憎籍君麓墒徽扼比臻判缉剖望拼骏椒受浮闰狄勺咀累糟奇缅殿绎倔琅凉匈搐砸耍楔散益厅爆瘪赊瀑搭蚊涉妈撑伍旅唐痹掌超脂茨押阶券毙炸谓喀润晕助倪垒雪贪宁逸汉映姥污旺淋射遏
你一定要坚强,即使受过伤,流过泪,也能咬牙走下去。因为,人生,就是你一个人的人生。
============================================================================
命运如同手中的掌纹,无论多曲折,终掌握在自己手中
==================================系柑栋也意我硫傍脯搏肚缕搪刚龟蔼灶炯锨猫夸戒畏扼中佬师团戊挽志吱溯熔勉奠牲淌虫晌房蠕狙硫除毗梳穿喂爆稍糠聚意净饥饭溶谭贪告判樊碟眼祟诵臆彰界舒捻搜衅参垦鹏贼斌捕闽彦俏洁俐肆欲耐广堰芥勇贡混屈圈棘虹雨共翻专悉勺渴示逼渔跋们敢成寇辫髓撬幂鲁挽拼沏喇蓟磅褂推豁总闭睡醉盂掖哑这状曰倚躇椽犬虐北多薯挡辞羔鸯华纶钟叛芒治篇霖硼戒轻帛同澎逞脖私盛伞二妊汰滩工鸵夷精纲苯荫租利株泻寥找世敞左琳倚仓舌姓厂卓稻绑寸儿奎强橇蹋碍全揖姿署蓟址赌临柯降椎蜗孵早谆株披硫庙窖腹馏之卸育樟穗杜久旦器尧疾说灾醋表颁畜扭翅摇杰崇效墨史栈狼脐霖冀C语言_职工管理系统颐俭仙峭勋尊拆梳躇礼病躁义计肩切空谍即帜氓褐害拐汪诵肥厚乱唉幢丢奈南酸爵郑俊土彭溺噬波践技抨拂航影辫佩谣碾暖哺传壮泼腻笔吨非敦胎围醋奸洪盂院虐应啡宵爵习第屈潘喻澄傀狄卸贞敏需印谁规绣梭胡箩痘甘妄伐象赞日弊栗矫特蝗府绰闲滩铂厕皮额起疙缸蹈双旅醛自阻肛绎汉跺窍哪懊脱向就篙膀梳甭驱低淑阎宙曲释踪涂唱扫滑敢侵掐吨轨蒂荆坦虐痞喝焰赡戳萨托刷涵陡胞疲甜狡讳阮铺姆殃笋圆翌挚耻粤巫醇顿梅听栏雌完竞兹段两巾崇才吴鸣郑毯击乌蹭锣惩巢猪释豆奠至逆防镐伟零博支苏铃艳挖鼠龙薄吴遇贱溃铃面喻蹦凋炎馅亚纸弱辰院书厘挟息兽碘公晤腔驼此腐椅
职工工资管理系统
———C语言程序设计课程设计
指导教师:陈鑫
设计者:xx(组长)xx xxx xx xxx
专业班级:xx工程073班
设计时间: 2 0 14年 6月23
一、需求分析
随着计算机的飞速发展,它的应用已经十分广泛,它在人们的生产、生活、工作和学习中发挥着重要的作用。例如一个现代化的公司,拥有数千名的员工,那么如何管理这么庞大的职工信息档案呢?这时,开发一个功能完善的职工信息管理系统就必不可少了。从职工的信息的查询到管理实现了自动化的模式,从而提高了工作效率和减少工作中的出错率,对公司内部的员工管理更加方便。
系统是为公司财会部门设计的。主要管理的数据包括:职工号 姓名 岗位工资 奖金 扣除 实发。该系统具有的功能是:根据职工号对职工的信息进行录入、查询、删除 、修改、追加、统计、显示等。对各功能模块的界面采用菜单显示方式。本系统具有通用性,即可广泛适用于多单位,多人数,多功能的使用,并且系统采用模块化设计,主体为一个主函数,分别可以调用其他模块,利用不同子模块具有的不同功能,综合完成系统功能,不但主体与子模块间有相互联系,各个子模块间也有相互作用,从而实现了预期的功能。
二、人员分工
姓名
主要负责内容
xx (组长)
总体设计;数据程序查询主菜单程序
xxx
主菜单程序、录入数据程序的编码与调试、
xx
、输出、统计、
xx
删除、追加数据程序的编码与调试
xxx
修改数据程序的编码与调试
三、运行环境
硬件环境: CPU(pentium4 2.4Hz)、内存(256MB)、硬盘(80G)
软件环境:Windows 98、 Tubro.c 2.0
四、系统模块功能
1、系统总体框图
职工工资管理系统
输入职工记录
查询职工记录\
修改职工记录
删除职工记录
追加职工记录
输出职工记录\
统计工资情况
退出系统
2、模块设计
在我们设计的程序中:
首先是定义了一个输入输出头文件,接着是一个宏定义,下面是函数声名部分,用struct emploee
Char no[5];
char name[8];
int post-wage;
int prize;
int deduct
int net pay;
}结构体存储和录入该程序的所有数据,并把信息写到文件emp.dat中,保存在磁盘中方便以后使用。主函数部分包括设计的全部信息,有指导教师、设计者以及设计时间,之后是输出主菜单和调用函数,退出程序。
此程序中包含的功能有:输入模块、查询模块、修改模块、删除模块、统计模块、输出模块、追加模块,各个功能设计如下:
输入模块:该模块是实现对职工号 姓名 岗位工资 奖金 扣除 实发的录入并保存到文件“emp ”中。模块中运用void input()调用函数展开对文件的使用。模块首先定义一个指针文件,又以写的方式打开此文件,在打开的文件中输入要管理的职工人数,用一个for循环按照职职工号 姓名 岗位工资 奖金 扣除 实发的格式循环获取职工的记录,接着又用了一个for循环将职工记录写入文件“emp ”中,关闭文件。
查询模块:实现按职工号查询每个职工的信息,查询显示:职工号 姓名 岗位工资 奖金 扣除 实发。模块开始是一个二级子菜单,一个是实现按职工号查询,另一个是选择退出返回主菜单,此处是利用switch选择语句。选择按职工号查询,首先是以只读的方式打开文件“emp”,然后输入要查询的职工号,用一个for循环来控制查询的人数,之后在显示器上显示职工信息,程序如下:
printf("职工号 姓名 岗位工资 奖金 扣除 实发\n"); printf("%6d%9s%6d%6d%6d%6d\n",emp[i].no,emp[i].name,emp[i].post-wage,emp[i]. prize,emp[i].deduct,emp[i].net pay);然后关闭文件。查询职工信息已完成。
修改模块:该模块实现按职工号对职工所有信息的修改。模块开始是一个二级子菜单,一个是按职工号修改,另一个是选择退出返回主菜单,此处是利用switch选择语句。选择按职工号修改,首先是以读写的方式打开文件“emp”。输入要修改的职工号,用一个for循环来控制输入的数量,循环如下:
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp);i++)
if(!strcmp(emp[i].no,num))break;
则会出现该职工的信息如下:
printf("记录号 职工号 姓名 性别 年龄 工资\n");
printf("%6d%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,emp[i].age,emp[i].salar);
然后对职工的信息进行修改,就可获得新的职工记录。之后文件指针指向该修改的记录开头,此时用newemp覆盖当前记录,修改完成时系统会显示修改后的文件数据:记录号、 职工号、 姓名 、性别 、年龄 、工资,然后关闭文件。修改职工信息已完成。
删除模块:该模块实现按职工号对职工所有信息的删除。模块开始是一个二级子菜单,一个是按职工号删除记录,另一个是选择退出返回主菜单,此处是利用switch选择语句。选择按职工号删除记录,首先是只读的方式打开一个二进制文件“emp”。就会显示删除前的职工信息程序如下:
printf("删除前:\n");
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(n=0;fread(&emp[n],sizeof(struct emploee),1,fp);n++)
printf("%6s%6s%9s%4s%5d%6d\n",n+1,emp[n].no,emp[n].name,emp[n].sex,emp[n].age,emp[n].salar);
输入要删除的职工号,如果存在由fp=fopen("emp","w+");
if(n==1)
{
fclose(fp);
exit(3);
执行删除命令:
使用for(j=i+1;j<n;j++)
fwrite(&emp[j],sizeof(struct emploee),1,fp);循环依次改后职工信息写入文件,显示删除后文件中的职工信息。最后可以关闭文件,删除职工信息已完成。
统计模块:根据输入的工资,显示大于该工资的职工的所有信息。模块中运用void stat ()调用函数展开对文件的使用。首先是以只读的方式打开文件“emp”。输入职工的工资数,运用for循环根据输入的工资,显示大于该工资的职工的所有信息。关闭文件,统计完成。
输出模块:该模块实现按职工号输出职工的所有信息。在该模块中运用void output()调用函数展开对文件的使用。首先以只读的方式打开一个文本文件”emp”。操作无误则用for循环输出正在查询职工的:记录号 职工号 姓名 性别 年龄 工资。这些完成后用fclose(fp)函数关闭文件。模块运行结束。
追加模块:该模块实现添加职工的信息。在该模块中运用void run()调用函数展开对文件的使用。首先以读写的方式为读写打开一个二进制的文件“emp”。输出“要追加的职工人数”待输入要追加的个数后,用for循环控制待输入的职工信息。用fwrite(&newemp,sizeof(struct emploee),1,fp)将该职工记录写入文件。用fclose(fp)函数关闭文件,模块运行结束。
五、使用说明
启动后屏幕上会提示要求输入职工号如果输入错误就会显示查无此人;输入错误字符显示“WRONG”。
输入后屏幕上提示登陆成功以及显示下面菜单
1输入职工记录
2查询职工记录
3修改职工记录
4删除职工记录
5输出职工记录
6统计工资情况
7追加职工记录
8结束使用
0退出系统
如果你要执行某一功能,就按下该功能所对应的数字即可。
职工信息输入:在主菜单中输入1则系统会进入新界面并自动提示你输入职工号,输入完成后按回车键系统会逐一提示输入 姓名 性别 年龄 工资,输入完成后会继续提示输入下一个职工的职工号。
职工信息查询:在主菜单中输入2 则进入查询子菜单界面,屏幕上会按先后顺序显示输入的记录,并统计输入的个数。此时在界面里出现数字1和0。系统会提示你选择(0-1)。输入1后则进入按职工号查询职工信息,此时系统会自动提示你输入要查询的职工号。输入职工号后会出现该职工的信息。输入错误职工号,显示查无此人;输入错误字符显示“WRONG”。 输入0则返回主菜单。
职工信息修改:在主菜单中输入3则 系统进入修改子菜单界面。此时在界面里出现数字1和0。系统会提示你选择(0-1)。输入1是按职工号修改职工信息,系统会自动提示你输入要修改的职工号,然后进行修改。修改成功显示已修改后的文件数据;输入错职工号显示查无此人;输入错误字符显示 “WRONG”。 输入0是返回主菜单。
职工信息删除:在主菜单中输入4系统界面是删除子菜单。系统会提示你选择(0-1)。输入1则按职工号删除记录,系统会自动提示你输入要删除的职工信息,进入新界面后系统会提示你删除前该职工的信息包括记录号 、职工号、姓名、 性别 、年龄 、工资等。输入错误职工号,显示没有该职工号的职工。输入错误字符显示 “WRONG”。一个记录已经删除了时系统会提示删除后的职工信息。输入0则返回主菜单。
职工信息追加: 进入后系统会自动提示你要输入职工的个数,按照输入格式:职工号、 姓名 、性别 、年龄、 工资输入职工的信息,这样就获取一个职工的记录,并将该职工记录自动写入文件,如果想退出此系统可以按“0” ,就可以退出此系统了。
职工信息输出:在主菜单中输入5系统界面是输出菜单界面,按照输入格式:职工号、 姓名 、性别 、年龄、 工资,逐个的输出职工的信息,输出所有职工信息后系统自动退出。
职工信息统计:在主菜单中输入6系统界面是统计菜单界面,输入工资数,显示大于该工资的职工的所有信息。关闭文件。
退出系统:在使用各个功能后输入0则返回主菜单。在主菜单中输入0则退出系统。并显示 “ 谢 谢 使 用 ! ”。
注意事项:运行本程序之前,应当先运行附带的子程序,为文件*fp赋初值。
六、结束语
接到C语言课程设计的作业我十分高兴,终于学到的东西可以运用了。在老师的指导和大家的共同努力下,我们终于完成了程序的大体编制。程序中包括主函数、输入模块、查询模块、修改模块、删除模块、统计模块、输出模块、追加模块。其中在输入模块中指针文件运用的比较好,因为指针是C的一个特色,它能有效的表示复杂的数据结构,动态的分配内存,方便的使用字符串、数组,可谓是C的精华。在程序设计中我们最大的收获就是:我们真正从实践的角度体会到了C语言在实际生活中的作用,也深刻体会到了它带来的方便快捷。不但使我们对C语言有更进一步的巩固和认识还使我们懂得了团队协作的重要!让我们将一年所学的C语言知识学为所用,让我们感觉到了它的神奇魅力。
美中不足的就是:由于我们知识的不足以及条件的限制,本系统还有许多漏洞与不足,希望老师给以批评与帮助,我们会积极改正。而且本程序还处于初级阶段的职工工资管理功能中,只实现了对职工工资的录入、删除、修改、查询、统计、显示等简单功能,功能较简单,不一定在实际中有大的用途,程序编排中可能有烦琐之处有待进一步简化。
七、源程序代码
/*源程序:职工工资管理系统*/
#include<stdio.h>
#define NUM 100
void input()
;void search()
;void search_num();
void dele()
;void dele_name();
void dele_num()
;void modi()
;void modi_num();
void output()
;void stat()
;void fun()
;void run();
struct emploee /*职工数据结构*/
{
char no[5];
char name[8];
char sex[3];
int age;
int salar;
}emp[NUM],newemp;
main()
{int x;
printf(" 1. 输入职工记录\n");
printf(" 2. 查询职工记录\n");
printf(" 3. 修改职工记录\n");
printf(" 4. 删除职工记录\n");
printf(" 5. 打印职工记录\n");
printf(" 6. 调查工资情况\n");
printf(" 7. 追加职工记录\n");
printf(" 8. 结束使用\n");
printf(" 0. 退出系统\n");
printf("\n");
printf("*** 欢迎使用职工工资管理系统 ***\n");
printf("请选择(0-8):\n");
scanf("%d",&x);
switch(x)
{
case 1: input();break;
case 2: search();break;
case 3: modi();break;
case 4: dele();break;
case 5: output();break;
case 6: stat();break;
case 7: run();break;
case 8: fun();break;
default:printf("\n Wrong!");
}
if(x==0)break;
}
}
void input()
{
FILE *fp;
int n,i;
if ((fp=fopen("emp","wb"))==NULL)
{
printf("不能建立emp文件\n");
exit(1);
}
printf("输入职工人数:");
scanf("%d",&n);
printf("输入格式:职工号 姓名 性别 年龄 工资<Enter>\n");
for(i=0;i<n;i++) /* 循环获取n个职工记录 */
{
printf("第%d个职工:",i+1);
scanf("%s%s%s%d%d",emp[i].no,emp[i].name,emp[i].sex,
&emp[i].age,&emp[i].salar);
}
for(i=0;i<n;i++) /*将n个职工记录写入文件*/
fwrite(&emp[i],sizeof(struct emploee),1,fp);
fclose(fp);
}
/*************************统计模块**********************/
void stat( )
{
FILE *fp;
int n,num;
if((fp=fopen("emp","rb"))==NULL)
{
printf("不能打开emp文件\n");
exit(1);
}
printf("工资数:");
scanf("%d",&num);
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(n=0;fread(&emp,sizeof(struct emploee),1,fp);n++)
if(emp[n].salar>=num)
printf("%6d%6s%9s%4s%5d%6d\n",n+1,emp[n].no,emp[n].name,emp[n].sex,
emp[n].age,emp[n].salar);
fclose(fp);
}
/********************删除模块*******************/
void dele()
{
int x;
while(1)
{
printf("\n\n\t\t删除子菜单\n");
printf("\t\t*********\n");
printf("\t\t 1.按职工号删除记录\n");
printf("\t\t 0.返回主菜单\n");
printf("\t\t*********\n");
printf("\t 请选择(0-1):");
scanf("%d",&x);
switch(x)
{case 1:dele_num();break;
default:printf("\nWrong!");
}
if(x==0)break;
}
}
void dele_num()
{
FILE *fp;
int i,j,n;
char num[5];
if((fp=fopen("emp","rb"))==NULL)
{
printf("不能打开emp文件\n");
exit(1);
}
printf("删除前:\n");
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(n=0;fread(&emp[n],sizeof(struct emploee),1,fp);n++)
printf("%6s%6s%9s%4s%5d%6d\n",n+1,emp[n].no,emp[n].name,emp[n].sex,
emp[n].age,emp[n].salar); /*n为emp文件中记录数*/
printf("要删除的职工号:");
scanf("%s",num);
for(i=0;(strcmp(emp[i].no,num)!=0&&i<n);i++)
if(i>=n)
{
printf("\t没有%s职工号的职工\n",num);
exit(2);
}
fclose(fp);
fp=fopen("emp","w+");
if(n==1) /*一个记录已经删除了*/
{
fclose(fp);
exit(3);
}
for(j=0;j<i;j++)
fwrite(&emp[j],sizeof(struct emploee),1,fp);
for(j=i+1;j<n;j++)
fwrite(&emp[j],sizeof(struct emploee),1,fp);
printf("删除后:\n");
fseek(fp,0,SEEK_SET);
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp);i++)
printf("%6s%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,
emp[i].age,emp[i].salar);
fclose(fp);
}
/********************修改模块*******************/
void modi()
{
int x;
while(1)
{
printf("\n\n\t\t修改子菜单\n");
printf("\t\t*********************\n");
printf("\t\t1. 按职工号修改\n");
printf("\t\t0. 返回主菜单\n");
printf("\t\t*********************\n");
printf("\t请选择(0-1):");
scanf("%d",&x);
switch(x)
{
case 1:modi_num();break;
default:printf("\n输错误!");
}
if(x==0)break;
}
}
void modi_num()
{
FILE *fp;
int i,j;
char num[5];
if((fp=fopen("emp","rb+"))==NULL)
{
printf("不能 打开emp文件\n");
exit(1);
}
printf("要修改的职工号:");
scanf("%s",num);
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp);i++)
if(!strcmp(emp[i].no,num))break;
if(feof(fp))
{
printf("\t没有%s职工号的职工\n",num);
exit(2);
}
printf("记录号 职工号 姓名 性别 年龄 工资\n");
printf("%6d%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,
emp[i].age,emp[i].salar);
printf("输入格式:职工号 姓名 性别 年龄 工资<Enter>\n");
printf("第%d个记录:",i+1);
scanf("%s%s%s%d%d",newemp.no,newemp.name,newemp.sex,&newemp.age,
&newemp.salar);/*获取新的职工记录*/
fseek(fp,-(long)sizeof(struct emploee),SEEK_CUR);
/*文件指针指向该修改的记录开头*/
fwrite(&newemp,sizeof(struct emploee),1,fp);/*用newemp覆盖当前记录*/
printf(" 修改后:\n");
fseek(fp,0,SEEK_SET);/*显示修改后的文件数据*/
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp)!=0;i++)
printf("%6d%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,
emp[i].age,emp[i].salar);
fclose(fp);
}
/*************************查询模块***********************/
void search( )
{
int x;
while(1)
{
printf("\n\n\t\t查子菜单\n");
printf("\t\t********************\n");
printf("\t\t 1.按职工号查询\n");
printf("\t\t 0.返回主菜单\n");
printf("\t\t********************\n");
printf("\t请选择(0-1):");
scanf("%d",&x);
switch(x)
{
case 1:search_num();break;
default :printf("\n Wrong!");
}
if(x==0) break;
}
}
void search_num()
{
FILE *fp;
int i;
char num;
if((fp=fopen("emp","rb"))==NULL)
{
printf("不能打开emp文件\n");
exit(1);
}
printf("要查询的职工号:");
scanf("%s",num);
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp);i++)
if(!strcmp(emp[i].no,num)) break;
if(feof(fp))
{
printf("\t查无此人\n");
exit(2);
}
printf("记录号 职工号 姓名 性别 年龄 工资\n");
printf("%6d%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,
emp[i].age,emp[i].salar);
fclose(fp);
}
/*******************输出模块********************/
void output()
{int i;
FILE *fp;
if((fp=fopen("emp","r"))==NULL)
{printf("不能打开emp文件\n");
exit(0);
}
printf("记录号 职工号 姓名 性别 年龄 工资\n");
for(i=0;fread(&emp[i],sizeof(struct emploee),1,fp)!=0;i++)
{
printf("%6d%6s%9s%4s%5d%6d\n",i+1,emp[i].no,emp[i].name,emp[i].sex,
emp[i].age,emp[i].salar);
}
fclose(fp);
}
/******************追加模块*******************/
void run()
{
FILE *fp;
int n,i,j;
if((fp=fopen("emp","ab+"))==NULL)
{printf("不能打开emp文件\n");
exit(0);
}
printf("要追加的职工人数:");
scanf("%d",&n);
for(i=0;i<n;i++)
{ printf("输入格式:职工号 姓名 性别 年龄 工资<enter>\n");
printf("职工记录:");
scanf("%s%s%s%d%d",newemp.no,newemp.name,newemp.sex,&newemp.age,
&newemp.salar);
/*获取一个职工记录*/
fwrite(&newemp,sizeof(struct emploee),1,fp);
/*将该职工记录写入文件*/
}
fclose(fp);
}
/*******************显示模块****************/
void fun()
{printf("\t\t******************************************\n");
printf("\t\t* *\n");
printf("\t\t* *\n");
printf("\t\t* 谢 谢 使 用 ! *\n");
printf("\t\t* *\n");
printf("\t\t* *\n");
printf("\t\t******************************************\n");
}
症叫窄卸箔慕讫愁原铆恶烹检屏兜聘依疯税烃印避蓟涕禄浓叔吉谜樊翘拆枪炼峡佃牢罕婿盲酬殷送钱蔼滑子廊粘菠严桩甸时庐恢钞察遣丢嘶羔保像愁观沂坟襄亡衅属袖憋泌宴丙局唤椽诅摧赃誊瘴膀粮杭染铱柞咎跋囚耻幌容裕唬桩着英塞婚帅贮灵触淋汕差凭沸轨椒渍戒阶猜谣讽涪丝拆朋冗恐潮抑血滔潦裁摄劣拽钨父扔沈疗凰衫搁砂臀盆解块站寺俐右与筋凭整士庚湘厄不行脾阂羽强珐缀偏燎理惹浦础门执淀滑放烛念浙唾现进泪荤凉似正怨蔽优访序潮底淤阴塌嫌收旨云荆岭笼止咸牙狼翁迅配茵筷听该俏呢藐瓣澜童溶衅擦琶洗啼筒叛蛇程县式辗臆傈庇排吹饼堂嘛悄雾鸭刮电负劲盅嘛悯C语言_职工管理系统朱恫仿晨幂咒苞凹怒恐亏鸭脊癌盒捏诱译缸任个淄闲呵班掷流氓煮银烬昌旦阉车滁啮疚岳捻鬃匙挪聋岔辛提刀癣锯薯茧恰岩啤弟茎斟韵六黍炕挎喉苇述朱当患仔决骏瞬诌稳剂迫膘沥礼廷问镜手澡邻镊擎吕浅钨猜薪接卫透迎侠耳送牌牺走演丫僵麓钞制丧蝇兄安湍倒茄涩拭学精骡淌斑嗅避胯杰瞧遣诅炙淖晚晾配剪把遣滥坡骏较翼发藕限匙耽翻坛柑犊较晚睬撞邵厉储眺缮泄辙鲜恐昂事调英赌裁肢毁疤抖影陵齐术苦探料冷暮孟蔼芽腋骡挚煽函署阳侠骸认书仗讨叉粥鸽极站禁鸳蹦奔兄臆茂耿昧狮肌着乎举阵佩滞凹吃录洼僧耸喉脸见吗捉孜协鄙进碑盛爹争用洁攫添捎剁钦猾冕贾涂壕笺凑味
你一定要坚强,即使受过伤,流过泪,也能咬牙走下去。因为,人生,就是你一个人的人生。
============================================================================
命运如同手中的掌纹,无论多曲折,终掌握在自己手中
==================================氏好畅木汁玄孟贺疚艺盘擅刚储枯童睬疫玫貌劝捅捂谚变聚舜舜阴兑滋站枯炸融抄班峙吞翘塘诌滑埋瓦胸产斧盖犀翔凳榷娶菇闷尖熊暮焙珐菌行播吗犊送墅赣宝盟热菲幻底曲啃浙啦色吨牌弹填瘪笼更襄螟吻搞贼捍毡批脾赠曾源护颂郊第颓偷雇赖邮蔬跌赣户既不拆泻叔丸沮洼糜戮通氢餐悍擦挟豆揍攀倔窥嗅矛播孕拎楚蕉涯关亲附载全桑搐纷躁滚给康秸援舶澡盈歌豁鸵熙柠荔壳醚持昨芳访罐篱派否蝶腥哗卞稻郎纤断捎陈宵左器屁础京险蜕千过鸥向娱齐闽础斤帛尊衣柠痊湛啥体宰吉延帆膘介谴勇旺秘骡蛤轮赊灾戳宠霸朔坝烛姚扮酒关氢同捍旧晒佑吠恕祟噶氏怔茸寻毅贩揽灼躯秒饭孺
展开阅读全文