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

正文內(nèi)容

個人賬單管理系統(tǒng)_數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(編輯修改稿)

2024-10-04 14:06 本頁面
 

【文章內(nèi)容簡介】 //判斷輸入的年份是否為合理數(shù)據(jù) { printf(\n\t 輸入您要建立賬單的月份 \n\t)。 scanf(%d,amp。j)。 //輸入月份數(shù)據(jù) if(j0amp。amp。j13) //判斷輸入的月份數(shù)據(jù)是否為合理數(shù)據(jù) { tail=(bill *)malloc(sizeof(bill))。 //申請一個結(jié)點空間 if(tail==NULL) { printf(存儲空間分配失敗 !\n)。 return(NULL)。 } taildate=100*i+j。 //將年份和月份為轉(zhuǎn)為一長整數(shù)字存儲 tailnext=NULL。 //新結(jié)點的指針域指向空 printf(\n\t 輸入 食品費用 :\t)。 scanf(%ld,amp。tailfood)。 //輸入食品費用 printf(\n\t 輸入 房租 :\t)。 scanf(%ld,amp。tailfangzu)。 //輸入房租費用 printf(\n\t 輸入 子女教育費 :)。 scanf(%ld,amp。tailjiaoyu)。 // 輸入子女教育費 printf(\n\t 輸入 水電費 :\t)。 scanf(%ld,amp。tailshuidian)。 //輸入水電費 printf(\n\t 輸入 醫(yī)療費 :\t)。 scanf(%ld,amp。tailyiliao)。 //輸入醫(yī)療費 printf(\n\t 輸入 儲蓄 :\t)。 scanf(%ld,amp。tailchuxu)。 //輸入存儲 printf(\n\t 輸入 總收入 :\t)。 沈陽航空航天大學(xué)課程設(shè)計報告 9 scanf(%ld,amp。tailine)。 //輸入總收入 tailpay=tailfood+tailfangzu+tailjiaoyu+tailshuidian+tailyiliao。 //將所有支出相加作為總支出 pnext=tail。 //將新申請的結(jié)點鏈接到原鏈表的最尾端 p=pnext。 //指針 p 向后移動一個單位 } else printf(\n\t 輸入月份不合理,請重新輸入! \n\t)。 printf(\n\t 輸入您 要建立賬單的年份 ,當(dāng)輸入非正數(shù)時結(jié)束輸入! \n\t)。 scanf(%ld,amp。i)。 //輸入年份信息 } } MYBILL *jianli(MYBILL *head) //建立賬單鏈表函數(shù) { MYBILL *head。 //定義結(jié)構(gòu)體類型指針 tianjia(head)。 //調(diào)用子函數(shù) tianjia() if (headnext!=NULL) //判斷賬單鏈表是否為僅含空頭結(jié)點的鏈表 printf(\n\t\t\t===========賬單錄 入成功! ===========\n\n)。 else printf(\n\t\t\t===========沒有賬單錄入! ===========\n\n)。 return head。 //返回頭指針 } 2. 賬單排序,排序方法采用將所有數(shù)據(jù)中最小和最大值挑選出來,再將處于這兩個數(shù)據(jù)中間位置的其他數(shù)據(jù)進行插入。 MYBILL *paixu(MYBILL *head) //賬單信息排序函數(shù) { long min,max。 //定義兩個變量對兩個最值 數(shù)據(jù)進行標記 int i,j。 //年份月份定義 MYBILL *q,*t,*p,*head1。 //定義結(jié)構(gòu)體類型指針 q=headnext。 //將 q 初始化為 headnext 沈陽航空航天大學(xué)課程設(shè)計報告 10 if(headnext!=NULL) //判斷鏈表是否為只含頭結(jié)點的空鏈表 { min=qpay。 //第一結(jié)鏈表支出最少 t=head。 //初始化指針 t 的值 p=q。 //初始化 p 的值 while (qnext!=NULL) //月支出最小結(jié)點 為新排序賬單的第一個結(jié)點 {if (minqnextpay) //比較 q 的 pay 和 qnext 的 pay 大小 { min=qnextpay。 //如果 pnext 的 pay 小將其值賦給 min p=qnext。 //用 p 標記支出最少的結(jié)點 t=q。 //用 t 標記支出最少的結(jié)點的上一結(jié)點 } 以便摘除支出最少的結(jié)點 q=qnext。 //將指針 q 向后移動一個單位 } tnext=pnext。 //將支出最少的結(jié)點摘下 head1=(bill *)malloc(sizeof(bill))。 //申請排序后鏈表頭結(jié)點 head1next=p。 //將最小支出連接到新鏈表后作為第一個結(jié)點 pnext=NULL。 //將新鏈表尾端指向空 q=headnext。 //再次將 q 指向原鏈表頭指針的后一結(jié)點 if(q!=NULL) //判斷鏈表是否為只含頭結(jié)點的空鏈表 { max=qpay。 //月支出最大結(jié)點 為新排序賬單的第二個結(jié)點 t=head。 //初始化指針 t 的值 p=q。 //初始化 p 的值 while (qnext!=NULL) //判斷是否只存在最大最小支出外 { if (maxqnextpay)//比較 max 與 qnextpay 的大小 {max=qnextpay。//如果 pnext 的 pay 小將其值賦給 max p=qnext。 //用指針 p 標記支出最多的結(jié)點 t=q。 //用指針 t 標記支出最大的結(jié)
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1