freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

職工工資管理系統(tǒng)設計實驗報告(已修改)

2025-08-01 05:27 本頁面
 

【正文】 內(nèi)蒙古工業(yè)大學信息工程學院實 驗 報 告課程名稱: c語言 實驗名稱:實驗類型: 驗證性□ 綜合性√ 設計性□實驗室名稱: 電西8樓 班級: 計122 學號:201220201042姓名: 孫亞賽 組別: 同組人: 勾濤 付啟恒 成績: 實驗日期: 201333 47 / 48 目錄1 題目與要求 32 功能設計 5 5 模塊流程圖 73 程序代碼設計 84 C程序設計總結 225 結束語 236 源程序 231 題目與要求程序設計的目的和要求:1)復習、鞏固程序設計的基礎知識,進一步加深對程序設計語言的理解和掌握;熟練使用函數(shù)、結構體、文件、數(shù)組、循環(huán)與選擇、鏈表和指針等知識點,熟練應用C語言綜合知識。2)為學生提供了一個既動手又動腦,獨立實踐的機會,將課本上的理論知識和實際有機的結合起來,鍛煉學生的分析解決實際問題的能力。提高學生適應實際,實踐編程的能力;3)培養(yǎng)學生在項目開發(fā)中團隊合作精神、創(chuàng)新意識及能力。:1)對系統(tǒng)進行功能模塊分析、控制模塊分析正確,符合題目要求,實現(xiàn)相應功能;可以加以其他功能或修飾,使程序更加完善、合理;2)系統(tǒng)設計要實用、編程簡練、功能全面、界面美觀、操作使用便捷、程序運行穩(wěn)定;3)說明書、流程圖要清晰;4)記錄設計情況(備查,也為編寫設計說明書作好準備);5)要求采用模塊化程序設計方法,及鋸齒型書寫格式,要求上機調試通過,能正確運行;6)設計上交內(nèi)容:設計報告一份(按格式書寫);源程序一份(電子版,能編譯成可執(zhí)行文件并能正常運行。每個班由班長負責收集并上交)。題目:職工工資管理系統(tǒng)1)、應提供一個界面來調用各個功能,調用界面和各個功能的操作界面應盡可能清晰美觀。2)、輸入功能:職工信息的錄入(包括從文件中導入職工信息數(shù)據(jù)),可以一次完成若干條記錄的輸入。3)、瀏覽功能:完成對全部職工信息的顯示。4)、查找功能:①完成按姓名查詢職工的相關信息,并顯示。②完成按ID號查詢職工的相關信息,并顯示。5)、刪除功能:通過輸入ID號完成對職工的信息進行刪除。6)、添加功能:完成添加新職工的信息。7)、修改功能:通過輸入ID號完成對職工的信息進行修改。8)、計算功能:計算職工的各項工資,并得出實發(fā)工資。[個人收入所得稅按現(xiàn)行稅率計算]9)、統(tǒng)計功能:統(tǒng)計并輸出符合指定條件的職工人數(shù)及其占總人數(shù)和百分比。[如實發(fā)工資在5000元以上。10)、保存功能:可以將職工信息數(shù)據(jù)保存至指定的文件中。11)、退出職工工資管理系統(tǒng)。職工信息應至少包括以下數(shù)據(jù):ID號、姓名、基礎工資、職務工資、住房公積金、個人收入所得稅,水電費、實發(fā)工資。:我實現(xiàn)的題目中的問題:主菜單頁面制作;職工數(shù)據(jù)輸入;職工全部數(shù)據(jù)瀏覽;按姓名、學號查找職工數(shù)據(jù);通過ID號對職工數(shù)據(jù)進行刪除;通過ID號對職工數(shù)據(jù)修改;職工數(shù)據(jù)統(tǒng)計(將自己題目做完后完成了其它功能)。:結構體、數(shù)組、循環(huán)、選擇、函數(shù)調用、分支、指針、全局變量、文件讀取、保存:主菜單頁面制作;職工數(shù)據(jù)輸入;職工全部數(shù)據(jù)瀏覽;按姓名、學號查找職工數(shù)據(jù);通過ID號對職工數(shù)據(jù)進行刪除;通過ID號對職工數(shù)據(jù)修改;職工數(shù)據(jù)統(tǒng)計;2 功能設計,利用switch語句設計如圖1所示的主菜單請輸入要執(zhí)行的功能對應選項(110)1. 錄入職工信息2. 瀏覽職工信息3. 添加職工信息4. 查詢職工信息5. 刪除職工信息6. 修改職工信息7. 員工實發(fā)工資8. 職工工資排序9. 職工工資統(tǒng)計10. 返回菜單,執(zhí)行input函數(shù)利用循環(huán)錄入職工各項信息,輸入完畢后將所有數(shù)據(jù)存入文件。,執(zhí)行view函數(shù),讀取文件,利用循環(huán)將職工各項信息顯示,執(zhí)行tianjia函數(shù),讀取文件,輸入添加人數(shù),然后調用input1函數(shù),利用全局變量D自動將新添加的職工信息補充到已存職工信息后面(利用循環(huán)),保存至文件(利用switch語句,通過ID號和姓名查找),利用charge函數(shù),讀取存入到文件中的職工信息,選取相應的使用通過ID號(charge1函數(shù))和姓名查找(charge2)的函數(shù)對職工信息查找,調用delete函數(shù),讀取文件,利用循環(huán)將與輸入ID號相同的文件中的職工信息刪除。,調用xiugai函數(shù),讀取文件通過循環(huán)將所需各項信息修改,調取gongzhi函數(shù),將員工實發(fā)工資輸出,其中實發(fā)工資在輸入函數(shù)input函數(shù)中利用選擇和循環(huán)計算得出,調取tongji函數(shù),讀取文件,利用循環(huán)將職工工資比較,進行排序,調取tongji函數(shù),將職工工資分為5000以上、30004000、20003000、2000以下四個檔次,其中對數(shù)據(jù)的統(tǒng)計在輸入函數(shù)input函數(shù)中實現(xiàn)。,即調用newu函數(shù)返回主菜單: 模塊流程圖職工工資信息管理系統(tǒng)主菜單newu()輸入模塊input()添加模塊input1()瀏覽模塊view()排序模塊paixu()按姓名查詢charge2()查詢模塊charge()按員工ID號查詢charge1()按實發(fā)工資排序paixu()刪除模塊delete()修改模塊員工工資統(tǒng)計3 程序代碼設計struct Worker{ int num。 //ID號碼 char name[20]。 //姓名 int salary1。 //基礎工資 int salary2。 //職務工資 int salary3。 //住房公積金 int salary4。 //社保金 float salary5。}stu[10000]。 //定義一個足夠大的結構體數(shù)組函數(shù)功能說明:結構體數(shù)組,用來存放題目所需信息,定義10000個結構體是為了構建足夠大的結構體使所有數(shù)據(jù)正常存取。void input(int n)輸入函數(shù){ void save(int n)。 //聲明一個保存函數(shù) void newu()。 //聲明一個菜單函數(shù) int i=0。 for (i=0。in。i++) { printf (\n請輸入職工號:)。 scanf (%d,amp。stu[i].num )。 printf (\n請輸入姓名:)。 scanf (%s,amp。stu[i].name)。 printf (\n請輸入基礎工資:)。 scanf (%d,amp。stu[i].salary1)。 printf (\n請輸入職務工資:)。 scanf (%d,amp。stu[i].salary2 )。 printf (\n請輸入住房公積金:)。 scanf (%d,amp。stu[i].salary3 )。 printf (\n請輸入社保金額:)。 scanf (%d,amp。stu[i].salary4 )。 if(stu[i].salary1 + stu[i].salary2 stu[i].salary3 stu[i].salary4 3500) { int a。 float b。 a = stu[i].salary1 + stu[i].salary2 stu[i].salary3 stu[i].salary4 3500。 if (a1500amp。amp。a4500) { b = (float)(a * 105)。 stu[i].salary5 = stu[i].salary1 + stu[i].salary2 b。 } if (a9000amp。amp。(a4500||a==4500)) { b = (float)(a * 555)。 stu[i].salary5 = stu[i].salary1 + stu[i].salary2 b。 } } stu[i].salary5 = stu[i].salary1 + stu[i].salary2 。 } save(n)。 //對結構體數(shù)據(jù)進行儲存 newu()。 //返回菜單}函數(shù)功能說明:將職工信息存入文件,save函數(shù)是保存函數(shù),將錄入的信息(職工的姓名、編號、基礎工資、職務工資、住房公積金、社保金額)存入指定文件中,newu函數(shù)是主菜單函數(shù),執(zhí)行完輸入函數(shù)后轉入主菜單進行其他功能的進行。此函數(shù)中通過for循環(huán)將多個職工信息錄入。下面的if語句是用來統(tǒng)計職工工資的,在此函數(shù)錄入職工信息的同時將其信息統(tǒng)計。void tianjia()添加函數(shù){ void input1(int n)。 int i。 printf (←請輸入添加的人數(shù)→;)。 scanf (%d,amp。i)。 input1(i)。}函數(shù)功能說明:此函數(shù)為添加函數(shù),通過此函數(shù)輸入要添加的人數(shù),再轉入input1函數(shù),添加職工信息。void input1(int n)添加函數(shù){ void save(int n)。 void newu()。 int i=0。 for (i=D。in+D。i++) { printf (\n請輸入職工號:)。 scanf (%d,amp。stu[i].num )。 printf (\n請輸入姓名:)。 scanf (%s,amp。stu[i].name)。 printf (\n請輸入基礎工資:)。 scanf (%d,amp。stu[i].salary1)。 printf (\n請輸入職務工資:)。 scanf (%d,amp。stu[i].salary2 )。 printf (\n請輸入住房公積金:)。 scanf (%d,amp。stu[i].salary3 )。 printf (\n請輸入員工社保金額:)。 scanf (%d,amp。stu[i].salary4 )。 if(stu[i].salary1 + stu[i].salary2 stu[i].salary3 stu[i].salary4 3500) { int a。 float b。 a = stu[i].salary1 + stu[i].salary2 stu[i].salary3 stu[i].salary4 3500。 if (a1500amp。amp。a4500) { b = (float)(a * 105)。 stu[i].salary5 = stu[i].salary1 + stu[i].salary2 b。 } if (a9000amp。amp。(a4500||a==4500)) { b = (float)(a * 555)。 stu[i].salary5 = stu[i].salary1 + stu[i].salary2 b。 } } stu[i].salary5 = stu[i].salary1 + stu[i].salary2 。 } save(n)。 newu()。}函數(shù)功能說明:此函數(shù)為添加函數(shù),在原有職工信息的基礎上再添加新的職工信息,定義一個全局變量D是原先輸入的職工個數(shù),此添加函數(shù)直接從D項開始錄入新的職工信息,If下面的語句是實發(fā)工資的計算,在錄入職工信息的過程中將實發(fā)工資計算出來,實發(fā)工資的函數(shù)見下面的函數(shù)。void save(int n)保存函數(shù)(將結構體的數(shù)據(jù)儲存到文件中){
點擊復制文檔內(nèi)容
化學相關推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1