關於人事管理系統c語言代碼的信息

本文目錄一覽:

用c語言做高校人事管理系統

可以憑藉Baiduhi告訴我們

有機會能夠處理你所遇到的工作

同樣的要求也能夠告訴我們

ES:\\9D6BD8E6395E2F9C56667678DCCC8414

交易提醒:預付定金有風險

怎麼用C語言寫人事管理系統,要求就是這樣

首先創建一個結構體,如——structstudent{charnum[10];//學號charname[20];//姓名charsex[4];//性別

c語言 編一個人事管理系統 具有①信息的錄入 ②信息的修改 ③信息的插入 ④信息的刪除:的功能

#includestdio.h

#define N 40

#includestring.h

#includeconio.h

#includestdlib.h

struct student{

 long num;//工號

 char name[10];//姓名

 char sex[4];//性別

 char ad[100];//地址

 char barthday[20];//出生日期

 char apartnum[100],posinum[10],adds[100];//部門編號、職務編號、備註

 char posiname[20];//職務名稱

 float income;//職務工資

}st[N];

void menu()

{

    printf(“****************************************\n”);

    printf(“歡迎使用家庭財務管理系統\n”);

    printf(“****************************************\n\n”);

    printf(“1:添加記錄\n”);

    printf(“2:查詢記錄\n”);

    printf(“3:刪除記錄\n”);

    printf(“4:顯示所有記錄\n”);

    printf(“0:退出\n”);

}

void  input(struct student s[],int *n)

{

    printf(“請輸入您所要添加的職工數目\n”);

    int x,i,j,b,flag=0;

    scanf(“%d”,x);

    b=*n+x;

    for(i=*n+1;i=b;i++)

    {

        flag=1;

        printf(“請輸入員工工號:\n”);

        scanf(“%ld”,s[i].num);

        for(j=1;ji;j++)

            if(s[i].num==s[j].numi1)

            { printf(“輸入有誤\n”);flag=0;i–;b–;break;}

        if(flag)

        {

            printf(“請輸入員工姓名:\n”);

            scanf(“%s”,s[i].name);

            printf(“請依次輸入該員工性別、出生日期、地址、部門編號、職務編號、職務名稱、職務工資、備註:\n”);

            scanf(“%s%s%s%s%s%s%f%s”,s[i].sex,s[i].barthday,s[i].ad,s[i].apartnum,s[i].posinum,s[i].posiname,s[i].income,s[i].adds);

        }

    }

    *n=b;if(flag) printf(“添加成功\n”);

    printf(“輸入完畢!按任意鍵返回主菜單!”); getch();

}

void Delete(struct student s[],int *n)

{

    printf(“請輸入您所要刪除的職工姓名\n”);

    char m[10];int j;

    scanf(“%s”,m);

    for(j=1;j=*n;j++)

    if(strcmp(s[j].name,m)==0)

    {

        *n=*n-1;

        for(;j=*n;j++)

        s[j]=s[j+1];

        break;

    }

    printf(“刪除成功!\n”);

    printf(“輸入完畢!按任意鍵返回主菜單!”); getch();

}

void find(struct student s[],int n)

{

    long b=0;char c[10],kk[10];

    printf(” \t****************************************\n”);

    printf(” \t\t1.1———-按工號查詢\n”);

    printf(” \t\t1.2———-按姓名查詢\n”);

    printf(” \t****************************************\n”);

    int j,e,flag=0;

    float soc;

    scanf(“%s”,kk);

    if(strcmp(kk,”1.1″)==0){

        printf(“請輸入職工工號\n”);

        scanf(“%s”,c);

        {

            for(j=0,e=strlen(c);je;j++)

            b=b*10+c[j]-48;

            printf(“工號  姓名  性別  出生日期  地址  部門編號  職務編號  職務名稱  職務工資  備註\n”);

            for(j=1;j=n;j++)

            if(b==s[j].num)

            {

                flag=1;

                printf(“%ld %s %s %s %s %s %s %s %.2f %s”,s[j].num,s[j].name,s[j].sex,s[j].barthday,s[j].ad,s[j].apartnum,s[j].posinum,s[j].posiname,s[j].income,s[j].adds);

            }

            if(!flag)

                printf(“未找到相關職工信息\n”);

       }

    }

    else if(strcmp(kk,”1.2″)==0)

    {

        printf(“請輸入職工姓名\n”);

        scanf(“%s”,c);

        printf(“工號  姓名  性別  出生日期  地址  部門編號  職務編號  職務名稱 職務工資  備註\n”);

        for(j=1;j=n;j++)

            if(strcmp(s[j].name,c)==0)

            {

                flag=1;

                printf(“%ld %s %s %s %s %s %s %s %.2f %s\n”,s[j].num,s[j].name,s[j].sex,s[j].barthday,s[j].ad,s[j].apartnum,s[j].posinum,s[j].posiname,s[j].income,s[j].adds);

            }

        if(!flag)

            printf(“未找到相關職工信息\n”);

    }

    else

        printf(“輸入有誤…..\n”);

    printf(“查找完畢!按任意鍵返回主菜單!”); getch();

}

void print1(struct student s[],int n)

{

    printf(“工號  姓名  性別 出生日期  地址  部門編號 職務編號  職務名稱  職務工資  備註\n”);

    for(;n0;n–)

    printf(“%ld %s %s %s %s %s %s %s %.2f %s\n”,s[n].num,s[n].name,s[n].sex,s[n].barthday,s[n].ad,s[n].apartnum,s[n].posinum,s[n].posiname,s[n].income,s[n].adds);

    printf(“輸出完畢!按任意鍵返回主菜單!”); getch();

}

int main()

{

    menu();

    int x,n=0;

    while(scanf(“%d”,x)!=EOFx!=0)

    {

        switch(x)

        {

            case 1:input(st,n);break;

            case 2:find(st,n);break;

            case 3:Delete(st,n);break;

            case 4:print1(st,n);break;

            default:printf(“Input error!\n”);

        }

        system(“cls”); /*清屏*/

        menu();

 }

 return 0;

}

C語言編寫人事管理系統

這個設計不是很複雜,可以嘗試自己做做,

不懂的地方,我幫你解決。me 我,

給你部分代碼,

求一個c語言人事管理系統

不滅王朝

碼齡9年

關注

int menu(){

printf(“請按提示輸入完成操作!\n”);

printf(“1.查詢員工信息\n”);

printf(“2.統計員工數量\n”);

printf(“3.錄入員工信息\n”);

printf(“4.刪除員工信息\n”);

printf(“5.按id排序所有員工\n”);

printf(“6.打印所有員工信息\n”);

printf(“7.退出系統\n”);

return 0;

}

如menu()函數所示,該系統一共有7個功能

#include stdio.h

#include stdlib.h

#include string.h

struct emp{

int id;

char name[50];

struct emp * next;

// struct emp * prev;

};

struct emp * initList();

struct emp * addListTailNode(struct emp * head);

struct emp * deleteListNode(struct emp * head,int id);

struct emp * searchEmp(struct emp * head,int id);

int printList(struct emp * l);

int printNode(struct emp * p);

struct emp * sortList(struct emp * head);

int getListLen(struct emp * head);

int writeToDisk(struct emp * head);

struct emp * readFromDisk();

int menu();

int usage(struct emp * head);

#include “emp.h”

int main(){

struct emp * head;

head=readFromDisk();

usage(head);

return 0;

}

struct emp * initList(){

struct emp * head;

head=(struct emp *)malloc(sizeof(struct emp));

head-next=NULL;

return head;

}

struct emp * addListTailNode(struct emp * head){

int id;

char name[50];

struct emp * p, * last , * check;

last = head;

while(last-next!=NULL){

last=last-next;

}

printf(“依次輸入:員工id號,姓名!\n”);

scanf(“%d%s”,id,name);

check = head;

while(check!=last){ //遍歷

check=check-next;

if(id==check-id){

printf(“添加失敗!員工id號重複!\n”);

return head;

}

}

p=(struct emp *)malloc(sizeof(struct emp));

p-id=id;

strcpy(p-name,name);

//

last-next=p;

last=p;

p-next=NULL;

printf(“%s員工信息已添加!\n”,p-name);

return head;

}

struct emp * deleteListNode(struct emp * head,int id){

struct emp * p,* q;

p = head-next;

while(p!=NULL){

if(p-next-id==id){

break;

}

p=p-next;

}

if(head-next==NULL){

printf(“書籍信息為空!刪除失敗!\n”);

}

else{

q = p-next;

p-next = q-next;

printf(“%s書籍信息被刪除!\n”,q-name);

free(q);

}

return head;

}

struct emp * searchEmp(struct emp * head,int id){//查詢,返回節點信息

struct emp * p;

p = head-next;

while(p!=NULL){

if(p-id==id){

break;

}

p=p-next;

}

return p;

}

int printNode(struct emp * p){//打印節點信息

if(p!=NULL){

printf(“員工id: %d 員工姓名:%s\n”,p-id,p-name);

}

else{

printf(“系統內無該員工信息!\n”);

}

return 0;

}

int printList(struct emp * head){ //打印整條鏈表

struct emp * p;

p = head-next;

while(p!=NULL){

printNode(p);

p=p-next;

}

return 0;

}

struct emp * sortList(struct emp * head){//排序

struct emp * p,* q;

int temp_id;

char temp_name[50];

for(p=head-next;p!=NULL;p=p-next){

for(q=p-next;q!=NULL;q=q-next){

if(p-idq-id){

temp_id = q-id;

q-id = p-id;

p-id = temp_id;

//

strcpy(temp_name,q-name);

strcpy(q-name,p-name);

strcpy(p-name,temp_name);

}

}

}

return head;

}

int getListLen(struct emp * head){

int len=0;

struct emp * p;

p=head-next;

while(p!=NULL){

len++;

p=p-next;

}

return len;

}

int writeToDisk(struct emp * head){

FILE * fp;

struct emp * p;

if((fp = fopen(“D:\\emp.hhtx”, “w”)) == 0){

printf(“寫入失敗……!\n”);

return 0;

}

//

p=head-next;

while(p!=NULL){

fwrite(p,sizeof(struct emp),1,fp);

printf(“%d %s\n”,p-id,p-name);

p=p-next;

}

fclose(fp);

return 0;

}

struct emp * readFromDisk(){

FILE * fp;

struct emp * head,* last,* p,* temp;

head = initList();

if((fp = fopen(“D:\\emp.hhtx”, “r”)) == 0){

printf(“加載失敗……未找到存檔數據!\n\n”);

return head;

}

//

last = head;

p=(struct emp *)malloc(sizeof(struct emp));

while(p!=NULL){

p=(struct emp *)malloc(sizeof(struct emp));

fread(p,sizeof(struct emp),1,fp);

printf(“讀取數據: %d %s\n”,p-id,p-name);

//

last-next=p;

last=p;

p=p-next;

}

fclose(fp);

printf(“系統數據初始化完成!”);

return head;

}

int menu(){

printf(“請按提示輸入完成操作!\n”);

printf(“1.查詢員工信息\n”);

printf(“2.統計員工數量\n”);

printf(“3.錄入員工信息\n”);

printf(“4.刪除員工信息\n”);

printf(“5.按id排序所有員工\n”);

printf(“6.打印所有員工信息\n”);

printf(“7.退出系統\n”);

return 0;

}

int usage(struct emp * head){

int x,id;

struct emp * p;

menu();

while(1){

printf(“請輸入序列號:”);

scanf(“%d”,x);

switch(x){

case 1:

printf(“輸入所要查詢的員工的id號:”);

scanf(“%d”,id);

p = searchEmp(head,id);

printNode(p);

printf(“———————————\n”);

break;

case 2:

printf(“系統中一共存在%d個員工\n”,getListLen(head));

break;

case 3:

head=addListTailNode(head);

printf(“———————————\n”);

break;

case 4:

printf(“輸入所要刪除的員工的id號:”);

scanf(“%d”,id);

head=deleteListNode(head,id);

printf(“———————————\n”);

break;

case 5:

printf(“排序開始……\n”);

head=sortList(head);

printf(“排序已完成!\n”);

printf(“———————————\n”);

break;

case 6:

printList(head);

printf(“——

原創文章,作者:JHAJ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/142672.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JHAJ的頭像JHAJ
上一篇 2024-10-12 09:44
下一篇 2024-10-12 09:44

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29

發表回復

登錄後才能評論