?? 職工信息管理系統(tǒng).c
字號:
#include<stdio.h>
#include<process.h>
#include<string.h>
struct born
{
int year;
int mouth;
int day;
};
struct inf
{
int num;
char name[30];
char sex[3];
struct born bor;
char degree[10];
char position[10];
int income;
char address[20];
int phone;
}inf;
void input()/*創(chuàng)建信息*/
{
FILE *fp;
if((fp=fopen("inf.txt","w"))==NULL){
printf("can not open file inf.txt!\n");
}
printf("請輸入職工號,姓名,性別(gg/mm),出生年月(yyyy-mm-d),學(xué)歷,職務(wù),工資,住址與電話:\n");
scanf("%d%s%s%d-%d-%d%s%s%d%s%d",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
while(inf.num!=0){
fprintf(fp,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
scanf("%d",&inf.num);
if(inf.num==0)break;
scanf("%s%s%d-%d-%d%s%s%d%s%d\n",inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);}
if(fclose(fp)){
printf("can't close file inf.txt!\n");
exit(0);}
}
void skip()/*瀏覽全部信息*/
{FILE *fp;
fp=fopen("inf.txt","r");
while(!feof(fp)){
fscanf(fp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(inf.num!=0)
printf("%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
else
printf("沒有你要找的信息!\n");
}fclose(fp);
}
void search1()/*按工資查詢*/
{int pay,t;
FILE *fp;
void search();
printf("請輸入工資:\n");
scanf("%d",&pay);
fp=fopen("inf.txt","r");
while(!feof(fp)){
fscanf(fp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(pay==inf.income)
printf("%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);}
printf("繼續(xù)請輸入1\n返回請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:search();break;
case 0:break;
default: break;}
}
void search2()/*按學(xué)歷查詢*/
{char degree[10];
FILE *fp;int t;
void search();
printf(" 請輸入學(xué)歷:\n");
scanf("%s",degree);
fp=fopen("inf.txt","r");
while(!feof(fp)){
fscanf(fp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(strcmp(degree,inf.degree)==0)
printf("%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
else
if(feof(fp))
printf("對不起找不到你所要的信息!\n ");
}
fclose(fp);
printf("繼續(xù)請輸入1\n返回請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:search();break;
case 0:break;
default: break;}
}
void search()/*查詢*/
{int t;
printf("按工資查詢請輸入1\n按學(xué)歷查詢請輸入2\n");
scanf("%d",&t);
switch(t){
case 1:search1();break;
case 2:search2();break;
default: break;}
}
void del()/*刪除信息*/
{
FILE *fp,*fpp;
int hao,t;
printf("請輸入要刪除的職工號:\n");
scanf("%d",&hao);
fp=fopen("inf.txt","r");
fpp=fopen("inf2.txt","w");
while(!feof(fp)){
fscanf(fp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(hao!=inf.num)
fprintf(fpp,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
}
printf("刪除成功!\n");
fclose(fp);
fclose(fpp);
fp=fopen("inf.txt","w");
fpp=fopen("inf2.txt","r");
inf.num=0;
while(!feof(fpp))
{
fscanf(fpp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(inf.num!=0)
fprintf(fp,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
}
fclose(fp);
fclose(fpp);remove("inf2.txt");
printf("繼續(xù)請輸入1\n返回請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:del();break;
case 0:break;
default: break;}
}
void correct()/*修改信息*/
{FILE *fp,*fpt;
int hao,t;
printf("請輸入要修改的職工號:\n");
scanf("%d",&hao);
fp=fopen("inf.txt","r");
fpt=fopen("temp.txt","w");
while(!feof(fp))
{
fscanf(fp,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
if(hao==inf.num)
{
printf("請輸入新的的員工信息:\n");
printf("職工號、姓名、性別(gg/mm)、出生年月(yyyy-mm-dd)、學(xué)歷、職務(wù)、工資、地址與電話\n");
scanf("%d%s%s%d-%d-%d%s%s%d%s%d",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
printf("修改成功!\n");
}
fprintf(fpt,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
}
fclose(fp);
fclose(fpt);
fp=fopen("inf.txt","w");
fpt=fopen("temp.txt","r");
while(!feof(fpt))
{
fscanf(fpt,"%d%s%s%d-%d-%d%s%s%d%s%d\n",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
fprintf(fp,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
}
fclose(fp);
fclose(fpt);
remove("temp.txt");
printf("繼續(xù)請輸入1\n返回請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:correct();break;
case 0:break;
default: break;}
}
void del_cor()/*刪除、修改信息*/
{int t;
printf("刪除信息請輸入1\n修改信息請輸入2\n");
scanf("%d",&t);
switch(t){
case 1:del();break;
case 2:correct();break;
default: break;}
}
void add()/*添加的職工信息*/
{FILE *fp;
fp=fopen("inf.txt","a");
printf("請輸入要添加的職工信息:\n");
printf("職工號,姓名,性別(gg/mm),出生年月(yyyy-mm-d),學(xué)歷,職務(wù),工資,住址與電話:\n");
scanf("%d%s%s%d-%d-%d%s%s%d%s%d",&inf.num,inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
while(inf.num!=0){
fprintf(fp,"%d %s %s %d-%d-%d %s %s %d %s %d\n",inf.num,inf.name,inf.sex,inf.bor.year,inf.bor.mouth,inf.bor.day,inf.degree,inf.position,inf.income,inf.address,inf.phone);
scanf("%d",&inf.num);
if(inf.num==0)break;
scanf("%s%s%d-%d-%d%s%s%d%s%d\n",inf.name,inf.sex,&inf.bor.year,&inf.bor.mouth,&inf.bor.day,inf.degree,inf.position,&inf.income,inf.address,&inf.phone);
}
fclose(fp);
}
void lulu()
{int t;
printf("職工信息錄入會刪掉原有信息,如果是請輸入1\n如果是想添加信息請輸入2\n返回請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:input();break;
case 2:add();break;
case 0:break;
default: break;}
}
main()
{
int i;
do{printf("歡迎進(jìn)入職工信息管理系統(tǒng):\n職工信息錄入請輸入1\n信息瀏覽請輸入2\n按工資、學(xué)歷查詢請輸入3\n信息刪除、修改請輸入4\n添加職工信息請輸入5\n返回請輸入0\n");
scanf("%d",&i);
switch(i){
case 1:lulu();break;
case 2:skip();break;
case 3:search();break;
case 4:del_cor();break;
case 5:add();break;
default: break;
}
}while(i!=0);
}
/*void go_on()
{void del_cor()
int t;
printf("繼續(xù)請輸入1\n返回上層請輸入2\n退出請輸入0\n");
scanf("%d",&t);
switch(t){
case 1:del();break;
case 2:del_cor();break;
case 3:break;}
}*/
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -