C语言程序设计课设——小型工资管理系统

    技术2024-04-18  100

    #include<stdio.h> #include<stdlib.h> #include<windows.h> #include<string.h> #define maxsize 20 typedef struct { int number;//工号 char name[10]; char sex[10]; char section[10]; int wage[10];//从这里面我们分成基本工资,绩效,奖金 int total;//这是总工资 }list; typedef struct { list stu[maxsize]; int len; }linklist; yanshi(char *p) { while (1) { if (*p!=0) printf("%c",*p++); else break; Sleep(10); //延时控制间断语句 } } void insert(linklist &q,int &n) { int i=0; for(i=0;i<n;i++) { printf("输入第%d职工的数据 工号 姓名 性别 部门 基本工资 绩效工资 奖金: \n",i+1); scanf("%d",&q.stu[i].number);//这是工号 scanf("%s",&q.stu[i].name); scanf("%s",&q.stu[i].sex); scanf("%s",&q.stu[i].section); for(int j=0;j<3;j++) { scanf("%d",&q.stu[i].wage[j]); q.stu[i].total=q.stu[i].wage[j]+q.stu[i].total; } } } void xiugai(linklist &q) { printf("输入要修改的职工工号:\n"); int i,j; scanf("%d",&i); for( j=0;j<q.len;j++) { if(i==q.stu[j].number) { break; } } printf("输入要修改的数据 1.工号 2.姓名 3.性别 4.部门 5.基本工资 6.绩效工资 7.奖金: \n"); int x; scanf("%d",&x); switch(x) { case 1: printf("输入修改后的工号: \n"); scanf("%d",&q.stu[j].number); break; case 2: printf("输入修改后的姓名: \n"); scanf("%s",&q.stu[j].name); break; case 3: printf("输入修改后的性别: \n"); scanf("%s",&q.stu[j].sex); break; case 4: printf("输入修改后的部门: \n"); scanf("%s",&q.stu[j].section); break; case 5: printf("输入修改后的基本工资: \n"); scanf("%d",&q.stu[j].wage[0]); break; case 6: printf("输入修改后的绩效工资: \n"); scanf("%d",&q.stu[j].wage[1]); break; case 7: printf("输入修改后的奖金: \n"); scanf("%d",&q.stu[j].wage[2]); break; } q.stu[j].total=0; for(int s=0;s<3;s++) { q.stu[j].total=q.stu[j].wage[s]+q.stu[j].total; } printf("1.工号 2.姓名 3.性别 4.部门 5.基本工资 6.绩效工资 7.奖金 8.应发工资\n"); for(int j=0;j<q.len;j++) { printf("%d ",q.stu[j].number); printf("%s ",q.stu[j].name); printf("%s ",q.stu[j].sex); printf("%s ",q.stu[j].section); for(int x=0;x<3;x++) { printf("%d ",q.stu[j].wage[x]); } printf("%d \n",q.stu[j].total); } } void sort(linklist q) { list p; int i,j; for(i=0;i<q.len;i++) { if(q.stu[i].number>q.stu[i+1].number) { p=q.stu[i]; q.stu[i]=q.stu[i+1]; q.stu[i+1]=p; } } printf("这是按照升序进行排序的: \n"); printf("1.工号 2.姓名 3.性别 4.部门 5.基本工资 6.绩效工资 7.奖金 8.应发工资\n"); for( j=0;j<q.len;j++) { printf("%d ",q.stu[j].number); printf("%s ",q.stu[j].name); printf("%s ",q.stu[j].sex); printf("%s ",q.stu[j].section); for(int x=0;x<3;x++) { printf("%d ",q.stu[j].wage[x]); } printf("%d \n",q.stu[j].total); } } void chaxun(linklist q) { printf("输入要查询的工号: \n"); int i,j; scanf("%d",&i); for( j=0;j<q.len;j++) { if(i==q.stu[j].number) { break; } } printf("1.工号 2.姓名 3.性别 4.部门 5.基本工资 6.绩效工资 7.奖金 8.应发工资\n"); printf("%d ",q.stu[j].number); printf("%s ",q.stu[j].name); printf("%s ",q.stu[j].sex); printf("%s ",q.stu[j].section); for(int x=0;x<3;x++) { printf("%d ",q.stu[j].wage[x]); } printf("%d \n",q.stu[j].total); } void output(linklist q) { printf("1.工号 2.姓名 3.性别 4.部门 5.基本工资 6.绩效工资 7.奖金 8.应发工资\n"); for(int j=0;j<q.len;j++) { printf("%d ",q.stu[j].number); printf("%s ",q.stu[j].name); printf("%s ",q.stu[j].sex); printf("%s ",q.stu[j].section); for(int x=0;x<3;x++) { printf("%d ",q.stu[j].wage[x]); } printf("%d \n",q.stu[j].total); } } int main() { system("color b"); yanshi(" --------------小型工资管理系统------------\n"); printf(" 1.数据输入\n"); printf(" 2.数据修改\n"); printf(" 3.数据处理(查询,排序)\n"); printf(" 4.数据输出\n"); printf(" 5.退出\n"); int x; linklist q; printf("输入要进行的操作: \n"); scanf("%d",&x); while(x!=-1) { switch(x) { case 1:printf("输入要要输入的职工数据人数: \n"); scanf("%d",&q.len); insert(q,q.len); break; case 2:xiugai(q); break; case 3: printf("输入要处理的是 1.排序 2.查询: \n"); int num; scanf("%d",&num); switch(num) { case 1: sort(q); break; case 2: chaxun(q); break; } break; case 4: output(q); break; case 5: printf("欢迎下次再次使用系统哦!\n"); break; } printf("选择下一步要进行的操作: \n"); scanf("%d",&x); } return 0; }
    Processed: 0.009, SQL: 9