• 回答数

    4

  • 浏览数

    263

深深哒瑷
首页 > 学术期刊 > c语言程序设计课程设计论文

4个回答 默认排序
  • 默认排序
  • 按时间排序

甜菜阿姨

已采纳

#include <>#define MAX 200int main(){ int a[MAX][MAX],n; void initmatrix(int a[][MAX]);//初始化矩阵,将所有元素赋0 void creatematrix_2k1(int a[][MAX],int n);//生成2n+1阶幻方 void creatematrix_4k(int a[][MAX],int n);//生成4n阶幻方 void creatematrix_4k2(int a[][MAX],int n);//生成4n+2阶幻方 void outputmatrix(int a[][MAX],int n);//输出n阶幻方 initmatrix(a); printf("please input a interger number:"); scanf("%d",&n); if(n%2) creatematrix_2k1(a,(n-1)/2); else {if(n%4==0) creatematrix_4k(a,n/4); else creatematrix_4k2(a,(n-2)/4);} outputmatrix(a,n); return 0;}void initmatrix(int a[][MAX]){ for(int i=0;ij)&&((i-j)%4==0||(i+j+1)%4==0)) {temp=a[i][j]; a[i][j]=a[4*n-1-i][4*n-1-j]; a[4*n-1-i][4*n-1-j]=temp;} for(i=0;i<2*n;i++) {temp=a[i][i]; a[i][i]=a[4*n-1-i][4*n-1-i]; a[4*n-1-i][4*n-1-i]=temp;}}void creatematrix_4k2(int a[][MAX],int n)//构造4n+2阶幻方{ int col=-1,row=-1,i; int exn=(2*n+1)*(2*n+1); int *p,*q; p=&col,q=&row; void fillmatrix_2(int a[][MAX],int *p,int *q,int cs, int rs,int n,int i);/*将i填入以a[cs][rs]为起始的2n+1阶幻方中,用p,q返回的i-1行列值*/ for(i=1;i<=exn;i++) fillmatrix_2(a,p,q,0,0,n,i); for(i=exn+1;i<=exn*2;i++) fillmatrix_2(a,p,q,2*n+1,2*n+1,n,i); for(i=2*exn+1;i<=3*exn;i++) fillmatrix_2(a,p,q,0,2*n+1,n,i); for(i=3*exn+1;i<=4*exn;i++) fillmatrix_2(a,p,q,2*n+1,0,n,i); void lastswap(int a[][MAX],int n);//对4n+2阶幻方做最后的变换 lastswap(a,n);}void fillmatrix_2(int a[][MAX],int *p,int *q,int cs, int rs,int n,int i){ int exn=(2*n+1)*(2*n+1); if(i%exn==1) { a[cs+0][rs+n]=i; *p=0,*q=n; } else {if((*p==0&&*q==2*n)||a[(*p+2*n)%(2*n+1)+cs][(*q+1)%(2*n+1)+rs]) { a[(*p+1)%(2*n+1)+cs][*q+rs]=i; *p=(*p+1)%(2*n+1); } else{ a[(*p+2*n)%(2*n+1)+cs][(*q+1)%(2*n+1)+rs]=i; *p=(*p+2*n)%(2*n+1),*q=(*q+1)%(2*n+1); } }}void lastswap(int a[][MAX],int n){ int temp,i,j; for(i=0;i3*n+2;j--) {temp=a[i][j]; a[i][j]=a[2*n+1+i][j]; a[2*n+1+i][j]=temp;}}求幻方的程序 #include <>#include <>#define IO "%d"//和下面一行共同扩展数据成员的格式typedef int ElemType;//同上typedef struct LinkNode{ ElemType data; struct LinkNode *next;}LinkNode,*Link;Link creat();//建立带头结点的链表,并返回头指针void print(Link);//输出链表所有结点bool insert(Link,int ,ElemType);//向head为头指针的链表中插入元素e使之成为链表第i个元素成功返回TRUE否则FALSEbool del(Link,int );//在head为头指针的链表中删除第i个结点,成功返回TRUE否则返回FALSEvoid operate(Link);//在本程序中进行链表的插入,删除,输出操作Link creat(){ Link head=(Link)malloc(sizeof(LinkNode)); Link pre=head,p; int count=1; char ch; printf("是否终止建立链表(Y/N):"); scanf("%c",&ch); while(ch=='n'||ch=='N') { p=(Link)malloc(sizeof(LinkNode)); printf("请输入第%d个结点内的数据:",count); scanf(IO,&(p->data)); fflush(stdin); pre->next=p; pre=p; printf("是否终止建立链表(Y/N):"); scanf("%c",&ch); count++; } pre->next=NULL; return head;}void print(Link head){ printf("链表目前情况为:\n"); Link p=head->next; int count=1; while(p) { printf("第%d个结点中数据为"IO" ",count,p->data); p=p->next; if((count++)%3==0)printf("\n"); } if(count%3!=1)printf("\n");}bool insert(Link head,int i,ElemType e){ Link pre,p; int k; for(k=0,pre=head;knext);//寻找第i-1个元素的指针 if(k!=i-1||(!pre))return false; p=(Link)malloc(sizeof(LinkNode)); p->data=e; p->next=pre->next; pre->next=p; return true;}bool del(Link head,int i){ Link pre,p; int k; for(k=0,pre=head,p=head->next;knext);//寻找第i-1个元素的指针 if(k!=i-1||(!p))return false; pre->next=p->next; free(p); return true;}void operate(Link head){ int n,i; ElemType e; do { printf("************************************************\n"); printf("请输入想进行何种操作\n1============插入结点\n2============删除结点\n3============输出链表\n"); scanf("%d",&n); switch(n) { case 1:printf("现在进行结点插入\n"); printf("请输入欲插入到何位置:");scanf("%d",&i); printf("请输入欲插入的数据:");scanf(IO,&e); if(insert(head,i,e))printf("插入成功!\n");else printf("插入失败!\n"); break; case 2:printf("现在进行结点删除\n"); printf("请输入欲删除结点位置:");scanf("%d",&i); if(del(head,i))printf("删除成功!\n");else printf("删除失败!\n"); break; case 3:print(head);break; default:break; } }while(n<4&&n>0);}int main(){ Link head=creat(); operate(head); return 0;}链表的操作#include <>#include <>//求积分int main(){ double f1(double); double f2(double); double f3(double); double f4(double); double f5(double); double (*p)(double); double integral(double a,double b,double(*p)(double)); double a,b;//记录积分区间 printf("请输入积分区间:"); scanf("%lf %lf",&a,&b); if(a>b){double temp=a;a=b;b=temp;}//确保a1e-6) { sum=0; for(i=0;i

225 评论

芥末花vera

发给你了邮箱里

316 评论

人参娃娃小辫子

C语言课程设计报告--学生成绩管理系C语言课程设计报告:学生成绩管理系统系统需求一、 当前学生信息:通过结构体struct student 来保存学生的姓名,学号,性别,语文,数学,英语和计算机等等相关信息,并且通过cin函数来进行给当前学生输入初始信息. 二、学生成绩查询: 输入一个学号, 在文件中查找此学生, 若找到则输出此学生的全部信息和成绩; 若找不到则输出查找失败的信息. 同时也可以全部把各科的平均成绩,最高和最低分输出。三、新生插入 :通过给该生的学号来和原班上的学生的学号比较大小,若大就在后,若小则靠前排,将此生的信息保存下来。 四、输出全部学生信息和全部学生成绩。五、退出系统.六、附加说明:系统将来完善的功能有:可以通过性别来模糊查询,也可以通过姓名的姓来先进行模糊查询,以便后面精确查找。总体设计一、 仔细阅读系统要求,首先将此系统化分为如下模块(即如下函数)1、输入初始的学生信息:其中包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)来实现此操作。 2、查询模块:可用stu *lookdata(stu *p1) 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。 3、插入模块:可用insert( )函数来实现。其中通过学号的大小来比较的,并且以此来排序。4、输出学生的信息以及成绩:通过学生的姓名来查看学生的语文、数学、英语和计算机等相关成绩,同时也可以分别通过caverage() 、 maverage() 、eaverage() 和comaverage() 来输出语文、数学、英语和计算机等成绩的平均分数、最高和最低分数。 5、退出系统:可用一个函数exit()来实现,首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。二、系统主模块结构图:详细设计一、 界面设计此系统界面采用图形和数字化菜单设计。主界面设计如下: 学生成绩管理系统 请选择相应的数字执行相应的功能:1:是否输入其他数据2:查看数据3:插入数据4:查找数据5:更新数据6:保留数据7:显示或打印数据8:语文成绩状况9:数学成绩状况10:英语成绩状况11:计算机成绩状况12:?13:退出系统二、 数据结构设计: 程序设计中用到的结构体类型: 学生信息结构体类型:typedef struct student{ char name[MAX]; int num[MAX]; char sex[MAX]; int chinese; int mathematic; int english; int computer; struct student *next; }程序代码://原始密码是123456#include""#include""#include""#include""#define MAX 10typedef struct student{ /*定义结构体*/ char name[MAX]; /*姓名*/ int num[MAX]; /* 学号*/ char sex[MAX]; /*性别*/ int chinese; /*语文*/ int mathematic; /* 数学*/ int english; /*英语*/ int computer; /*计算机*/ struct student *next; /*结构体指针*/ }stu;stu *head; /*头指针*/void print() /*显示或打印函数*/ { system("cls"); printf("\t\t\tScore Manage System\n"); /*成绩管理系统*/ printf("<1>Enter Record\t"); /*输入数据*/ printf("<2>Display\t"); /*显示*/ printf("<3>Insert\t"); /*插入数据*/ printf("<4>Quest\t"); /*访问数据*/ printf("<5>Update\t"); /*以前数据*/ printf("<6>Save\t"); /*保留数据*/ printf("<7>Fresh\t"); /*更新数据*/ printf("<8>Chinese Average\t"); /*语文平均成绩*/ printf("<9>Math Average\t"); /*数学平均成绩*/ printf("<10>English Average\t"); /*英语平均成绩*/ printf("<11>Computer Average\t"); /*计算机平均成绩*/ printf("<12>Quit\t\n"); /*退出*/ }void cin(stu *p1) /*输入相关数据的函数*/ { printf("Enter name:\n"); scanf("%s",&p1->name); printf("Enter num:\n"); scanf("%d",&p1->num); printf("Enter sex:\n"); scanf("%s",&p1->sex); printf("Enter score:\n"); printf("Enter chinese:\n"); scanf("%d",&p1->chinese); printf("Enter math:\n"); scanf("%d",&p1->mathematic); printf("Enter English:\n"); scanf("%d",&p1->english); printf("Enter Computer:\n"); scanf("%d",&p1->computer); } stu *cindata() /*其他数据是否继续输入的函数*/ { stu *p1,*p2; int i=1; char ch; p1=(stu *)malloc(sizeof(stu)); head=p1; while(i) { cin(p1); printf("Do you Want to Continue?yes or no"); /*是否继续输入数据*/ ch=getchar(); ch=getchar(); if(ch=='n'||ch=='N') { i=0; p1->next=NULL; } else { p2=p1; p1=(stu *)malloc(sizeof(stu)); p2->next=p1; } } return(p1->next);}stu *lookdata(stu *p1) /*查看数据的函数*/ { while(p1!=NULL) { printf("Num:%d\t",p1->num); printf("Name:%s\t",p1->name); printf("Sex:%s\t",p1->sex); printf("\n"); printf("Chinese:%d\t",p1->chinese); printf("Math:%d\t",p1->mathematic); printf("English:%d\t",p1->english); printf("Computer:%d\t",p1->computer); printf("\n"); p1=p1->next; } return p1; }void insert() /*通过比较学号来插入数据的函数*/ { stu *p1,*p3,*p2; char ch; p1=head; p3=(stu *)malloc(sizeof(stu)); p3->next=NULL; if(head==NULL){ head=p3; return;} cin(p3); while(p1!=NULL&&(p1->numnum)) /*通过学号的比较来插入*/ { p2=p1;p1=p1->next;} if(p2==head) {p3->next=head; head=p3; return;} p3->next=p1; p2->next=p3;}find(stu *p2) /*通过姓名查找查看数据的函数*/ { char name[20]; int b=0; printf("Enter the name of the student you want to find:"); /*通过姓名查看*/ scanf("%s",name); while(p2!=NULL) {if(strcmp(name,p2->name)==0) { printf("The data you want has be found\n"); printf(" Name:%s\t",p2->name); printf("Num:%d\t",p2->num); printf("sex%s\t",p2->sex); printf("\n"); printf("Chinese:%d\t",p2->chinese); printf("Math:%d\t",p2->mathematic); printf("English:%d\t",p2->english); printf("Computer:%d\t",p2->computer); printf("\n"); b=1; } else if(b==0) printf("sorry not find data!"); p2=p2->next; } if(b==1) { print(); printf("Find one\n");} else {print(); printf("Not find\n"); }}void caverage() /*求各学生语文平均分、最高和最低分成绩的函数*/ { stu *p1; int i; float max=; float sum=; p1=head; if(p1==NULL) printf("not data!"); else {for(i=0;p1!=NULL;i++,p1=p1->next) sum+=p1->chinese; aver=sum/i; p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) {if(maxchinese) max=p1->chinese; } p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) if(min>p1->chinese) min=p1->chinese; } printf("Chinese Average:%f",aver); printf("Chinese Max:%f",max); printf("Chinese Min:%f",min); }void maverage() /*求各学生数学平均分、最高和最低分成绩的函数*/ { stu *p1; int i; float max=; float sum=; p1=head; if(p1==NULL) printf("not data!"); else {for(i=0;p1!=NULL;i++,p1=p1->next) sum+=p1->mathematic; aver=sum/i; p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) {if(maxmathematic) max=p1->mathematic; } p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) if(min>p1->mathematic) min=p1->mathematic; } printf("Mathe Average:%f",aver); printf("Mathe Max:%f",max); printf("Mathe Min:%f",min); }void eaverage() /*求各学生英语平均分、最高和最低分成绩的函数*/ { stu *p1; int i; float max=; float sum=; p1=head; if(p1==NULL) printf("not data!"); else {for(i=0;p1!=NULL;i++,p1=p1->next) sum+=p1->english; aver=sum/i; p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) {if(maxenglish) max=p1->english; } p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) if(min>p1->english) min=p1->english; } printf("English Average:%f",aver); printf("English Max:%f",max); printf("English Min:%f",min); }void comaverage() /*求各学生计算机平均分、最高和最低分成绩的函数*/ { stu *p1; int i; float max=; float sum=; p1=head; if(p1==NULL) printf("not data!"); else {for(i=0;p1!=NULL;i++,p1=p1->next) sum+=p1->computer; aver=sum/i; p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) {if(maxcomputer) max=p1->computer; } p1=head; for(i=0;p1!=NULL;i++,p1=p1->next) if(min>p1->computer) min=p1->computer; } printf("Computer Average:%f",aver); printf("Computer Max:%f",max); printf("Computer Min:%f",min); }update(stu *p2) /*通过姓名查找来更新数据*/ { char name[10]; /*p2为指向结构体struct student的指针*/ int b=0; printf("Enter The Name"); /*输入姓名*/ scanf("%s",name); while(p2!=NULL) {if(strcmp(name,p2->name)==0) { printf("Find you data\n"); scanf("Name:%s",p2->name); scanf("Num:%s",p2->num); scanf("Sex:%s",p2->sex); scanf("Chinese:%d",p2->chinese); scanf("Math:%d",p2->mathematic); scanf("english:%d",p2->english); scanf("Computer:%d",p2->computer); printf("Success!"); b=1;} else if(b==0) printf("Sorry not Find data!"); p2=p2->next;} if(b==0) {print(); printf("Sorry not Find data!"); } else { print(); printf("Finish!"); } }save(stu *p2) /*保留数据函数*/ { FILE *fp; char file[10]; printf("Enter file name"); /*输入文件名*/ scanf("%s",file); fp=fopen(file,"w"); while(p2!=NULL) { fprintf(fp,"%s",p2->name); fprintf(fp,"%s",p2->num); fprintf(fp,"%s",p2->sex); fprintf(fp,"%d",p2->chinese); fprintf(fp,"%d",p2->mathematic); fprintf(fp,"%d",p2->english); fprintf(fp,"%d",p2->computer); p2=p2->next; } fclose(fp); }char password[7]="123456"; /*定义初始密码*/void main() /*主函数*/{ int choice; stu *p2; char s[8]; int flag=0,i; /*标志项*/ int n=3; do{ printf("Enter password:\n"); scanf("%s",s); if(!strcmp(s,password)) /*进行密码匹配验证*/ { printf("PASS\n\n\n"); flag=1; break; } else{ printf("Error Enter again:\n"); n--; } } while(n>0); if(!flag) {printf("you have Enter 3 times!"); /*输入密码超过了3次!!*/ exit(0); /*自动退出*/ } /*密码验证成功后进入的界面*/ printf("~~~~~~~~~~\t\t\t~~~~~~~~~~~~\n"); /*操作界面*/ printf("\t\tWelcom to the Mis\n"); printf("Author:-----\tClass:------\tNum:------\n"); /*作者,班级和号码*/ printf("Adress:HG\n"); /*地址*/ printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%\n"); printf("\t\tEnter OP:\n"); printf("\n\n\n\n"); printf("==============\t\t==============\n"); printf("==============\t\t==============\n"); printf("\t\tEnter the MIS yes or no\n"); /*问进入系统与否*/ scanf("%d",&choice); if(choice=='n'||choice=='N') exit(1); print(); while(1) { printf("Enter choice:"); scanf("%d",&i); if(i<1||i>13) { printf("Enter num from 1 to 13:\n"); /*再从1-13中进行选择*/ exit(1); } switch(i) { case 1: p2=cindata(); /*其他数据是否继续输入的函数*/ break; case 2: p2=lookdata(head); /*查看数据的函数*/ break; case 3: insert(); /*通过比较学号来插入数据的函数*/ break; case 4: find(head); /*通过姓名查找查看数据的函数*/ break; case 5: update(head); /*通过姓名查找来更新数据*/ break; case 6: save(head); /*保留数据函数*/ break; case 7: print(); /*显示或打印函数*/ break; case 8: caverage(); /*求各学生语文平均分、最高和最低分成绩的函数*/ break; case 9: maverage(); /*求各学生数学平均分、最高和最低分成绩的函数*/ break; case 10: eaverage(); /*求各学生英语平均分、最高和最低分成绩的函数*/ break; case 11: comaverage(); /*求各学生计算机平均分、最高和最低分成绩的函数*/ break; case 12: ; /*空操作*/ case 13: exit(1); /*退出*/ break;} scanf("%d",&i);}}程序中出现的问题及解决方法问题一、学生初始信息模块:其中包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)来实现此操作。当正确输入存在的学生学号,系统进行判断时,提示不存在此学生。解决办法及步骤:1、一个个输出所有的学生的学号,检查文件中是否有此学生,发现有。 2、既然有此学生,那么检查循环判断是否有此学生的语句发现没有错 3、输出用于循环检查语句中的学生信息,发现乱码 4、仔细分析乱码的原因,最后发现是变量的类型错误,错将学生类型的结构体指针变量定义为了其他类型的指针变量。问题二、查询模块:可用stu *lookdata(stu *p1) 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。当正确输入查找信息时,系统却不能够得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。解决办法及步骤:1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入查找信息看能否得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。 2、检查当我们在输入查找信息时,看是否我们输入的信息有误,若是这样的话,我们应当仔细输入查找信息。问题三、插入模块:可用insert( )函数来实现。其中通过学号的大小来比较的,并且以此来排序。当我们输入插入信息时,系统却提示插入不进数据。解决办法及步骤:1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入插入信息看能否插入进去得到所要插入的学生信息以及学生的语文、数学、英语和计算机的成绩。 2、检查当我们在输入插入信息时,看是否我们输入的插入信息有

150 评论

solomuse2012

#include #include #include using namespace std; const N=50; // 定义系统可录入的员工最大数值 string Ename[N]; long Enum[N]; char Esex[N]; int Eage[N]; char Emarriage[N]; int Edepart[N]; int Eposition[N]; int Edegree[50]; int Eworktime[N]; float Epay[N]; class Employee { public: string Employeename; long Employeenum; char Employeesex; int Employeeage; char Employeemarriage; int Employeedepart; int Employeeposition; int Employeedegree; int Employeeworktime; float Employeepay; static long EmployeeMaxNum; static float EmployeeBasePay; void NewInfo(); void ShowInfo(); void showall(); void showdepart(int depart); void showdegree(int degree); void showage(int min,int max); void shownum(long number); void RefreshInfo(); void DeleteInfo(); float Pay(int Employeegrade); static int MaxNum(); }; class DBOperate { public: string Employeename; long Employeenum; char Employeesex; int Employeeage; char Employeemarriage; int Employeedepart; int Employeeposition; int Employeedegree; int Employeeworktime; float Employeepay; static long EmployeeMaxNum; static float EmployeeBasePay; void WriteIn(int iflag); void ReadOut(); void RefreshMaxNum(int iflag); //i=1 or -1 or 0 }; long Employee::EmployeeMaxNum = 1000; float Employee::EmployeeBasePay = 1500; int Employee::MaxNum() //返回系统已经存储的人数 { int MN = 0; ifstream myf; (""); myf>>MN; cout<>Employee::Employeename; Employee::Employeenum = EmployeeMaxNum + Employee::MaxNum()+1; cout<<"新员工性别 (F为女性,M为男性): "; cin>>Employee::Employeesex; cout<<"新员工年龄: "; cin>>Employee::Employeeage; cout<<"新员工婚姻状况(Y为已婚,N为未婚): "; cin>>Employee::Employeemarriage; cout<<"新员工学历,请输入相应学历的序号: "<>Employee::Employeedegree; while(Employee::Employeedegree !=1&&Employee::Employeedegree !=2&&Employee::Employeedegree !=3&&Employee::Employeedegree !=4&&Employee::Employeedegree !=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeedegree; } cout<<"新员工所在部门,请输入相应部门的序号:"<>Employee::Employeedepart; while(Employee::Employeedepart !=1&&Employee::Employeedepart !=2&&Employee::Employeedepart !=3&&Employee::Employeedepart !=4&&Employee::Employeedepart!=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeedepart; } cout<<"新员工职位, 请输入相应职位的序号: "<>Employee::Employeeposition; while(Employee::Employeeposition !=1&&Employee::Employeeposition !=2&&Employee::Employeeposition !=3&&Employee::Employeeposition !=4&&Employee::Employeeposition !=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeeposition; } cout<<"新员工的工作时(不需要输入单位): "; cin>>Employee::Employeeworktime; Employee::Employeepay = Employee::Pay(Employee::Employeeposition); DBOperate dbo; (); int MaxNum = Employee::MaxNum(); Enum[MaxNum] = Employee::Employeenum; Ename[MaxNum] = Employee::Employeename; Esex[MaxNum] = Employee::Employeesex; Eage[MaxNum] = Employee::Employeeage; Emarriage[MaxNum] = Employee::Employeemarriage; Edegree[MaxNum] = Employee::Employeedegree; Edepart[MaxNum] = Employee::Employeedepart; Eposition[MaxNum] = Employee::Employeeposition; Eworktime[MaxNum] = Employee::Employeeworktime; Epay[MaxNum] = Employee::Employeepay; (1); cout<<" 添加新成员成功!"<>choice1; switch(choice1) { case 1: showall();break; case 2: cout<<"请输入要查询职工的部门编号: [1:董事会 2:市场部 3:公关部 4:客服中心 5:信息中心] " ; cin>>choice2; (choice2);break; case 3: cout<<"请输入要查询职工的学历编号: [1:初中 2:高中 3:本科 4:硕士 5:博士] "; cin>>choice2; (choice2);break; case 4: cout<<"请输入要查询的年龄范围: "; cout<<"最小值: "; cin>>min; cout<<"最大值: "; cin>>max; (min,max);break; case 5: cout<<"请输入要查询的员工号: "; cin>>searchnum; (searchnum);break; default: cout<<"出错啦! "<"<"<"<"<"<"<=min&&Eage[i]<=max) { long number = Enum[i]; shownum(number); } else continue; } } void Employee::shownum(long number) //按员工编号输出函数 { int i; for(i=0;i"<"<"; if(Esex[i]=='F') cout<<"女 "<"<"; if(Emarriage[i]=='Y') cout<<"已婚 "<"; switch (Edegree[i]) { case 1:cout<<"初 中 "<"; switch (Edepart[i]) { case 1:cout<<"董事会 "<"; switch (Eposition[i]) { case 1:cout<<"临时成员 "<"<"<"; cin>>cNum; int MN; MN = Employee::MaxNum(); for(int i=0;i>Employee::Employeename; Ename[i] = Employee::Employeename; cout<<"新员工性别: [F为女性,M为男性]: "; cin>>Employee::Employeesex; Esex[i] = Employee::Employeesex; cout<<"新员工年龄: "; cin>>Employee::Employeeage; Eage[i] = Employee::Employeeage; cout<<"新员工婚姻状况(Y为已婚,N为未婚): "; cin>>Employee::Employeemarriage; Emarriage[i] = Employee::Employeemarriage; cout<<"新员工学历,请输入相应学历的序号:"<>Employee::Employeedegree; while(Employee::Employeedegree !=1&&Employee::Employeedegree !=2&&Employee::Employeedegree !=3&&Employee::Employeedegree !=4&&Employee::Employeedegree !=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeedegree; } Edegree[i] = Employee::Employeedegree; cout<<"新员工所在部门,请输入相应部门的序号: "<>Employee::Employeedepart; while(Employee::Employeedepart !=1&&Employee::Employeedepart !=2&&Employee::Employeedepart !=3&&Employee::Employeedepart !=4&&Employee::Employeedepart!=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeedepart; } Edepart[i] = Employee::Employeedepart; cout<<"新员工职位,请输入相应职位的序号:"<>Employee::Employeeposition; while(Employee::Employeeposition !=1&&Employee::Employeeposition !=2&&Employee::Employeeposition !=3&&Employee::Employeeposition !=4&&Employee::Employeeposition !=5) { cout<<"输入有误,请重新输入:"<>Employee::Employeeposition; } Eposition[i] = Employee::Employeeposition; cout<<"新员工的工作时 (不需要输入单位): "; cin>>Employee::Employeeworktime; Eworktime[i] = Employee::Employeeworktime; Epay[i] = Employee::Pay(Employee::Employeeposition); break; } } (0); } void Employee::DeleteInfo() //删除员工数据的函数 { char tmp; int cNum = 1000; DBOperate dbo; (); void Employee::shownum(long number); cout<<"请输入您要修改的员工编号>: "; cin>>cNum; int MN; MN = Employee::MaxNum(); for(int i=0;i>tmp; if(tmp=='Y') { if(i==MN-1) (-1); else { for(int j=i;j>DBOperate::Employeenum>>DBOperate::Employeename>>DBOperate::Employeesex>>DBOperate::Employeeage>>DBOperate::Employeemarriage >>DBOperate::Employeedegree>>DBOperate::Employeedepart>>DBOperate::Employeeposition>>DBOperate::Employeeworktime>>DBOperate::Employeepay; Enum[i] = DBOperate::Employeenum; Ename[i] = DBOperate::Employeename; Esex[i] = DBOperate::Employeesex; Eage[i] = DBOperate::Employeeage; Emarriage[i] = DBOperate::Employeemarriage; Edegree[i] = DBOperate::Employeedegree; Edepart[i] = DBOperate::Employeedepart; Eposition[i] = DBOperate::Employeeposition; Eworktime[i] = DBOperate::Employeeworktime; Epay[i] = DBOperate::Employeepay; } (); } void DBOperate::RefreshMaxNum(int iflag) //更新系统中员工计数文件的函数 { int MaxNum = 0; ifstream myif(""); myif>>MaxNum; (); MaxNum = MaxNum+iflag; ofstream myof(""); myof<>select; Employee e; DBOperate dbo; switch(select) { case 1: (); break; case 2: (); (); break; case 3: (); break; case 4: (); break; case 5: break; default: cout<<"命令错误!"<

257 评论

相关问答

  • 统计学课程设计论文

    统计学是一门实质性的社会科学,既研究社会生活的客观规律,也研究统计方法。下文是我为大家整理的关于统计相关论文的范文,欢迎大家阅读参考! 浅谈概率在统计学中的应用

    自high患者 3人参与回答 2023-12-10
  • 程序设计毕业论文

    可以帮忙写哒

    阿里嘎多~ 4人参与回答 2023-12-09
  • c语言设计毕业论文

    兄弟,论文要自己用心写。我是过来人,自己写论文只有好处,没有坏处的。

    黄金哇塞赛 5人参与回答 2023-12-06
  • 英语课程设计论文题目

    小学教育主要涵盖语文、数学、英语、社会、政治、体育、艺术等各方面的基础教育,对儿童后期成长具有重要作用,基础打得好不好,直接关系到孩子的成才。下面跟着小编一起看

    annielove123 8人参与回答 2023-12-12
  • 机械设计课程设计论文

    机械设计基础课程设计是机械设计基础课教学的一个重要环节。下面是我为大家整理的机械设计基础论文,供大家参考。 [摘要]新教育形式下如何更好的向应用技术型大学转型,

    框框拆拆远行车 3人参与回答 2023-12-09