计算机程序设计基础C语言课程设计
w[i] = s; } if(length>0) w[0].grade =1; for(i=1;i //////////////////////////////////////////////////////////////////////////////// /* 按工作量从大到小排序并标上名次 */ //////////////////////////////////////////////////////////////////////////////// void sortNumber(struct worker w[],int length) { int i=0; int grade,count; if(length>0) { while(i 9 计算机程序设计基础C语言课程设计 } //////////////////////////////////////////////////////////////////////////////// /* 输出名次、同一名次的职工人数及他们的工号,姓名*/ //////////////////////////////////////////////////////////////////////////////// int delet(struct worker w[],int length,int stuNum) { int i,j; char choice; for(i=0;i if(i printf(\删除成功!\\n\ } } else printf(\指定的职工不存在!\\n\ return length; } /******************************************************** 按职工号删除职工信息 ********************************************************/ void writeToFile(struct worker w[],int length) { FILE *fp=NULL; int i=0; 10 计算机程序设计基础C语言课程设计 fp=fopen(FILENAME,\ if(fp==NULL) { printf(\打开文件出错!\\n\ exit(0); } for(i=0;i /******************************************************** 结构体数组中的职工信息输出到文件 ********************************************************/ void main () { int choice; struct worker w[N]; int NUM;char stuName[100]; int stuNum; int length=0; length=readFromFile(w);//读入 do { xinxi(); scanf(\ switch(choice) { case 1: length=f(w,length); break; case 2: input(w,length); break; case 3: sortCounts(w,length); sortNumber(w,length); break; case 4: printf(\请输入欲删除的职工号\ scanf(\ 11 计算机程序设计基础C语言课程设计 length=delet(w,length,stuNum); break; case 5: { writeToFile(w,length);//保存 printf(\程序使用以结束\\n\ exit(0); } default: { printf(\输入有错误请重新输入:\\n\ } } }while(1); } 3、系统运行结果 显示菜单 职工信息输入 12 计算机程序设计基础C语言课程设计 工作量输入 按工作量排序 13