版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
HUBEIUNIVERSITYOFAUTOMOTIVETECHNOLOGYC語言 程序設計課程設計報告課設題目:汽車零部件采購管理專業(yè):電子信息工程(汽車電子)班級:T1323-15姓名:徐倩成績:完成日期:2014年19周指導教師:吳年志目錄C語言程序設計---------------------------------------------------------------------------------------------------0課程設計報告------------------------------------------------------------------------------------------------------01、課程設計目得----------------------------------------------------------------12、需求分析--------------------------------------------------------------------------------------------------------22、1要求----------------------------------------------------------------------------------------------------22、2任務描述-----------------------------------------------------------------------------------------------22、3運行環(huán)境-----------------------------------------------------------------------------------------------32、4開發(fā)工具-----------------------------------------------------------------------------------------------33、總體設計--------------------------------------------------------------------------------------------------------43、1系統(tǒng)流設計 --------------------------------------------------------------------------------------------43、2系統(tǒng)模塊設計 -----------------------------------------------------------------------------------------54、詳細設計--------------------------------------------------------------------------------------------------------64、1數(shù)據(jù)結(jié)構(gòu)設計 -----------------------------------------------------------------------------------------64、2模塊接口設計 ----------------------------------------------------------------------------------------71)所有函數(shù)聲明 -------------------------------------------------------------------------------------72)全局變量 -------------------------------------------------------------------------------------------83)主要模塊得實現(xiàn) ----------------------------------------------------------------------------------94、3主要功能模塊得流程圖 ----------------------------------------------------------------------------95、運行結(jié)果------------------------------------------------------------------------------------------------------- 125、1歡迎界面 --------------------------------------------------------------------------------------------- 125、2 主菜單頁面----------------------------------------------------------135、3信息查詢頁面 --------------------------------------------------------------------------------------- 135、4統(tǒng)計菜單頁面 --------------------------------------------------------------------------------------- 135、5顯示信息頁面 --------------------------------------------------------------------------------------- 145、6退出頁面 --------------------------------------------------------------------------------------------- 146、程序調(diào)試與測試 --------------------------------------------------------------------------------------------- 146、1主菜單選擇測試 ------------------------------------------------------------------------------------ 156、2采購信息未從文件讀入 --------------------------------------------------------------------------- 166 、3采購信息輸入調(diào)試 -----------------------------------------------------187、問題與不足 --------------------------------------------------------------------------------------------------- 198、建議------------------------------------------------------------------------------------------------------------- 209、編程體會------------------------------------------------------------------------------------------------------- 2010、程序源代碼 -------------------------------------------------------------------------------------------------- 201、課程設計目得通過課程設計,加深對結(jié)構(gòu)化程序設計思想得理解,能對系統(tǒng)功能進行分析,并設計合理得模塊化結(jié)構(gòu)。通過課程設計,進一步掌握C語言中重要得數(shù)據(jù)結(jié)構(gòu)。掌握并熟練運用指針、鏈表、結(jié)構(gòu)體、文件等數(shù)據(jù)結(jié)構(gòu)。通過課程設計,提高程序開發(fā)能力,能運用合理得控制流編寫清晰高效得程序。通過課程設計,培養(yǎng)C語言知識運用與自學能力,真正得把課堂上獲得得知識運用起來,培養(yǎng)自己對程序編寫得興趣,并能獨立設計與實現(xiàn)一個小型系統(tǒng)。通過課程設計,加強了自己得程序分析能力。2、需求分析2、1要求遵循軟件開發(fā)過程得基本規(guī)范;能靈活應用,初步具備運用C程序解決實際問題得能力。運用結(jié)構(gòu)化程序設計方法,按照課程設計題目要求,完成包括需求分析、數(shù)據(jù)結(jié)構(gòu)設計、概要設計、詳細設計、編寫代碼、調(diào)試與測試C程序等過程。學會利用數(shù)組、結(jié)構(gòu)體、鏈表進行相關信息表示。功能模塊劃分清晰,系統(tǒng)結(jié)構(gòu)圖符合功能操作要求,且有詳盡得功能描述各主要功能模塊有詳盡得流程圖及描述,用函數(shù)得形式實現(xiàn),且調(diào)用入口、功能、出口等關系正確。所設計得C程序較好得可讀性與可靠性;程序書寫風格規(guī)范,注釋清晰。界面友好(良好得人機互交),凡需要輸入信息時,都有較詳盡得提示信息,并對輸入信息有較完善得值域分析。程序經(jīng)上機調(diào)試通過,不應出現(xiàn)語法型、功能型錯誤,并獲得滿意得結(jié)果。學會通過各功能性測試用例測試程序得能力,盡可能避免原則性錯誤得出現(xiàn)。掌握編寫、調(diào)試與測試C語言程序得基本技巧,充分理解結(jié)構(gòu)化程序設計得基本方法。C語言課程設計報告得內(nèi)容反應實際設計過程,且符合格式要求,無抄襲現(xiàn)象。2、2任務描述已知在汽車生產(chǎn)時,需要向零部件生產(chǎn)廠商采購零部件,設計一個汽車零部件采購管理程序,以方便采購管理部門對采購零部件得管理。該單位每次采購都有一個采購編號,每次采購一種零部件。該程序應該具有如下功能1) 添加并保存采購信息:輸入采購編號,零部件名稱,采購員名字,采購日期,采購價格,采購數(shù)量,供貨單位,需要判斷采購價格與數(shù)量就是否大于零,采購編號就是否已存在,采購日期就是否合法(形如****-**-**,例如2013-09-08)。2) 根據(jù)采購編號查詢零部件采購信息3) 根據(jù)零部件名稱查詢其采購信息4) 根據(jù)采購編號修改已有采購信息: 需要判斷修改后得采購編號得唯一性,采購日期得合法性(形如****-**-** ,例如2013-09-08)。5) 根據(jù)采購編號刪除此條采購信息6) 統(tǒng)計功能2、3運行環(huán)境VC++6、0編譯環(huán)境2、4開發(fā)工具語言3、總體設計3、1系統(tǒng)流設計程序整體功能結(jié)構(gòu)如圖一所示:開始顯示課程以及學生信息顯示主菜單,輸入選擇讀 添取 加文 并件 保中 存得 采采 購購 信信 息息
由采購編號查找零部件采購信息
修改并保存采購信息
由 刪零 除部 并件 保名 存稱 余查 下找 采其 購采 信購 息信息
統(tǒng)計采購信息
顯示所有采購信息根據(jù)零部件名稱統(tǒng)計其總 根據(jù)采購員名字統(tǒng)計數(shù)量 其采購次數(shù)3、2系統(tǒng)模塊設計1)封面模塊 函數(shù)voidhuanying() 與函數(shù)voidbyebye()構(gòu)成封面模塊,構(gòu)造與諧人機環(huán)境。2)菜單模塊
函數(shù)
void
menu()與函數(shù)
void
choise()
構(gòu)成選擇菜單,二級菜單
voidtongji()
構(gòu)成統(tǒng)計功能菜單。3)查詢模塊 函數(shù)voidnumshow()與函數(shù) voidnameshow()分別實現(xiàn)根據(jù)采購編號與零部件名稱查詢采購信息得功能,
其中會有其她函數(shù)輔助。4)信息處理模塊
函數(shù)
voidchange()
實現(xiàn)信息修改功能,函數(shù)
voiddisapperr()
實現(xiàn)信息刪除功能,
voidinput()
實現(xiàn)信息添加功能,
void
save()
實現(xiàn)信息保存功能,
void
listCG()實現(xiàn)信息顯示功能,其中會有其她函數(shù)輔助。5)統(tǒng)計模塊 函數(shù) intnumber() 實現(xiàn)根據(jù)零部件名稱統(tǒng)計其總數(shù)量功能,int times()實現(xiàn)根據(jù)采購員名字顯示其采購次數(shù)得功能,其中會有其她函數(shù)輔助。6)日期審查模塊 函數(shù)voidcheckdate() 使用標志位方法實現(xiàn)對時間得審查。4、詳細設計4、1數(shù)據(jù)結(jié)構(gòu)設計根據(jù)系統(tǒng)要求,采購信息包括:數(shù)據(jù)項名稱數(shù)據(jù)項系統(tǒng)表數(shù)據(jù)類型數(shù)據(jù)長度備注示采購編號P1->buynum字符串10零部件名稱P1->itemname字符串10采購日期P1->day字符串30采購員名字P1->buyername字符串10采購數(shù)量P1->count整型4采購價格P1->price單精度8供貨單位P1->source字符串10為了能實現(xiàn)系統(tǒng)得優(yōu)越性與 c語言得精華采用鏈表得建立采購 信 息 記 錄 表 , 示 意 圖 如 下 :采購信息1 采購信息2 采購信息34、2模塊接口設計1)所有函數(shù)聲明viodhuanying();/*******封面函數(shù),顯示課程題目,學生信息******/voidmenu();/*****主菜單函數(shù),顯示各項功能*****/voidchoise();/*****根據(jù)主菜單選擇并執(zhí)行功能*****/voidreadinto();/**********讀取文件內(nèi)得采購信息***********/voidinput();/*****從鍵盤添加采購信息并保存到文件中******/voidlistCG();/**********顯示所有采購信息**********/voidnumshow();/****根據(jù)采購編號查詢對應采購信息并顯示****/voidnameshow();/****根據(jù)零部件名稱查詢其采購信息并顯示****/voidchange();/****根據(jù)采購編號修改并顯示采購信息****/voiddisapper();/****根據(jù)采購編號刪除并顯示余下采購信息****/voidtongji();/******統(tǒng)計功能菜單,顯示兩項統(tǒng)計功能*****/intnumber();/***根據(jù)零部件名稱統(tǒng)計其購買總數(shù)量****/inttimes();/****根據(jù)采購員名字統(tǒng)計其采購次數(shù)****/intchecktime(intyear,intmonth,intday);/*************審查日期輸入就是否符合要求**************/voidbyebye();/*************告別界面************/voidsave();/*********保存采購信息********/2)全局變量1,用于存儲采購信息得結(jié)構(gòu)體 structbuy;2,判斷文件就是否正確讀入得標志位變量intflag;3,用于存儲采購信息得結(jié)構(gòu)體指針:structbuy*head=NULL,*p,*p1,*p2,*p3 、3)主要模塊得實現(xiàn)系統(tǒng)以int main()為入口,首先調(diào)用 void huanying()顯示課程名稱與學生信息,調(diào)用voidmenu()與voidchoise()實現(xiàn)功能顯示與功能選擇。接著,按照用戶得要求,調(diào)用voidnumshow()或voidnameshow()實現(xiàn)查詢功能,或調(diào)用voidchange(),voiddisapper()實現(xiàn)修改與刪除功能、、、、、、不管就是刪除還就是修改還就是添加都要調(diào)用voidsave()實現(xiàn)信息保存功能。添加與修改時還要調(diào)用
int
checktime(intyear,intmonth,intday)
函數(shù)對時間審查。當不需要再執(zhí)行各項功能時,調(diào)用
voidbyebye()
退出管理器。4、3主要功能模塊得流程圖1)封面模塊(以歡迎界面為例,退出界面與此類似)顯示題目與學生信息進入系統(tǒng)菜單模塊顯示主菜單接受用戶輸入選項否就是否合法?就就就是否為0?否否就是否為7?就就就是否合否法?退出管理系統(tǒng) 執(zhí)行用戶所選功能3)查詢模塊(以根據(jù)采購編號查詢采購信息為例 )輸入所查詢采購編號4)信息處理模塊( 以添加采購信息為例)編號主就是菜否單存在顯示編號對應采購信息 返回主菜單頁面輸入采購編號統(tǒng)計模塊(以根據(jù)零部件名稱統(tǒng)計采購總數(shù)量為例)就就是否已存輸入零部件名稱,s=0在6)日期審查模塊否否就就是否存輸入采購時間輸入采購時間,并將其表示成y,m,d否就是否合s加上其數(shù)量返回主菜單調(diào)用voidchecktime()函數(shù)格?就就否就是否合輸入其她信息返回1顯示添加信息返回05、運行結(jié)果5、1歡迎界面5、2主菜單5、3信息查詢頁面5、4統(tǒng)計菜單頁面5、5顯示信息頁面5、6退出頁面6、程序調(diào)試與測試測試數(shù)據(jù):采購編號001001001002001003001004零部件名活塞輪胎后視鏡方向盤稱采購日期2013-09-22013-04-22013-09-082013-09-0737采購員名劉堯徐倩衛(wèi)添翼李林琳字采購數(shù)量90679089采購價格90、00000078、00000078、00000067、000000供貨單位汽院十堰黃岡河南6、1主菜單選擇測試若用戶輸入錯誤選項,則如圖顯示 :6、2采購信息未從文件讀入6、3采購信息得輸入測試1) 若 添 加 得 采 購 編 號 已 存 在 , 則 如 圖 顯示 :2)若添加得采購信息日期格式輸入錯誤,則如圖顯示3)若查詢得采購編號輸入錯誤,則如圖顯示4)若查詢得零部件名稱輸入錯誤,則如圖顯示5)若輸入價格為負數(shù)時,如圖顯示6)若輸入得數(shù)量為負值時,如圖顯示7、問題與不足1、需求分析中存在得問題每次只能從鍵盤中添加一條采購信息, 當遇到需要添加多條信息時,比較麻煩。統(tǒng)計功能太少,如果要求幾個零部件得總價,無法實現(xiàn)。2、程序中存在得缺陷每次運行其她功能前都要先從文件中讀入,比較耗時。有些功能輸入錯誤時無法重新輸入,而就是直接跳到主菜單。緩存較多 。8、建議題目應更加貼近生活,這樣可以讓同學們瞧到 c語言得有用之處,激發(fā)同學們得學習熱情。課程設計得題目涉及范圍應該更廣。程序設計得功能應相對更加復雜一點,這樣有利培養(yǎng)同學們得分析問題,解決問題得能力,同時也能提高同學們對代碼得掌握能力。再者,就就是驗收時應該要學生畫出鏈表結(jié)構(gòu)圖,幫助她們更加深刻得掌握知識。9、編程體會經(jīng)歷了編c語言課程設計后,我對這一學期c語言所學內(nèi)容有了更加深刻得了解與掌握,特別就是一直不懂得鏈表與指針, 現(xiàn)在發(fā)現(xiàn)自己都能運用了,很開心自己得進步。所以,雖然寫程序得過程中,遇到各種問題,調(diào)試得時候也就是遇到各種令人頭大得問題, 但能借助課程設計提高自己對指針與鏈表得熟練度, 提高自己對c語言編程得熟練度,也希望學??梢远嚅_設一些這樣得課程, 既就是讓我們對自己所學知識得一個綜合理解與使用, 也可以提高我們得動手實踐能力、對知識得運用能力,更就是一個讓我們學會獨立思考得好機會。10、程序源代碼#include<stdio 、h>#include<stdlib 、h>#include<malloc 、h>#include<process 、h>#include<string 、h>#include<conio 、h>#defineLENsizeof(structbuy) // 申請結(jié)構(gòu)體空間#defineN100/***********申明程序中運用得函數(shù)**************/voidhuanying();//封面函數(shù)voidreadinto();//讀取文件voidinput();//添加采購信息voidlistCG();//顯示采購信息voidnumshow();//根據(jù)采購編號顯示采購信息voidnameshow();//根據(jù)零部件名稱顯示采購信息voidchange();//修改采購信息voiddisapper();//刪除采購信息voidmenu();//顯示主菜單voidchoise();//選擇所需功能voidtongji();//統(tǒng)計功能菜單intnumber();//根據(jù)零部件名稱統(tǒng)計采購得零部件總數(shù)量inttimes();//根據(jù)采購員名字統(tǒng)計采購得零部件總數(shù)量intcheckdate(intyear,intmonth,intday);//檢測時間voidbyebye();//告別界面voidsave();//保存文件/*************定義全局變量*************/structbuy//定義結(jié)構(gòu)體{charbuynum[10];charitemname[10];charday[30];charbuyername[10];intcount;floatprice;charsource[10];structbuy*next;};intflag=0;/******flag 為文件就是否以正確讀入得標志位 *******/structbuy*head=NULL,*p,*p1,*p2,*p3;/**** 定義結(jié)構(gòu)體指針****//****************** 主函數(shù)*******************/intmain(){huanying();getch();while(1){menu();
/******
顯示主菜單
*****/choise();
/******
顯示選擇功能
*****/}return0;}/***********************************************************
封面函數(shù)*********************************************************/voidhuanying(){printf("\n\n\n\t\t*****************************************************\n");printf("\t\t**\n");printf("\t\t*
c 語言課程設計*\n");printf("\t\t**\n");printf("\t\t*
學生姓名:徐倩*\n");printf("\t\t*
指導老師:吳年志*\n");printf("\t\t*
班級:
T1323-15*\n");printf("\t\t*
學號:
20130231538*\n");printf("\t\t*
聯(lián)系方式:(69180)
*\n");printf("\t\t**\n");printf("\t\t*
課程題目:汽車零部件采購管理程序*\n");printf("\t\t**\n");printf("\t\t*****************************************************\n");fflush(stdin);printf(" 請按回車鍵繼續(xù)······ ");}/********************************************************* 告別界面********************************************************/voidbyebye(){printf("\n\n\n\t\t*****************************************************\n");printf("\t\t**\n");printf("\t\t*printf("\t\t*
@@
@ @
@@
@
@@@
*\n");@
@*\n");printf("\t\t*
@
@
@
@
@*\n");printf("\t\t*printf("\t\t*
@@@@@
@@@@@
@@@@@*\n");
*\n");printf("\t\t*
@
@
@
@*\n");printf("\t\t*
@
@
@
@*\n");printf("\t\t*
@@@@
@ @@@@
*\n");printf("\t\t**\n");printf("\t\t*
歡 迎 下 次
使用······
*
\n");printf("\t\t*****************************************************\n");}/******************************************************* 主菜單函數(shù)**********************************************/voidmenu(){system("cls");printf("\n\n\n\t\t***************歡迎使用汽車零部件管理系統(tǒng)*************\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t1,讀取采購信息\t\t\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t2,從鍵盤添加并保存采購信息\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t3,根據(jù)采購編號查找零件信息\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t4,根據(jù)零部件名稱查找采購信息\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t5,修改并保存采購信息\t\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t6,刪除并保存余下采購信息\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t7,統(tǒng)計采購信息\t\t\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t8,顯示采購信息\t\t\t|\n");printf("\t\t|\t\t\t\t|\n");printf("\t\t|\t\t0,退出管理系統(tǒng)\t\t\t|\n");printf("\t\t***************************************************\n");}/******************************************************** 讀入文件函數(shù)*************************************************/voidreadinto(){FILE*fp;
/****
文件指針***/intn=0;if((fp=fopen("lingjian
、txt","r"))==NULL)/****
打開文件時無此文件****/{printf(" 文件打開錯誤:\n");exit(0);}p1=(structbuy*)malloc(LEN);head=p1;p1->next=NULL;while(!feof(fp))
/*****
讀取文件內(nèi)得信息
*****/{fscanf(fp,"%s%s%s%s%d%f%s",p1->buynum,p1->itemname,p1->day,p1->buyername,&p1->count,&p1->price,p1->source);p2=(structbuy*)malloc(LEN); /*********p2 指向新申請得節(jié)點**********/p1->next=p2;p3=p1;p1=p2;p1->next=NULL;}free(p2);p3->next=NULL;fclose(fp); /****** 關閉文件*****/flag=1;printf(" 文件讀取成功!\n");listCG();}/********************************************************選擇所需功能函數(shù)*********************************************/voidchoise(){intn;printf("------ 請從鍵盤輸入您得選擇( 0-8內(nèi)得整數(shù)):");scanf("%d",&n);while(n<0||n>8){printf(" 輸入不合法,請再輸入一次: ");scanf("%d",&n);}switch(n){case1:system("cls"); /****** 清屏*****/readinto();break;case2:system("cls");input();break;case3:system("cls");numshow();break;case4:system("cls");nameshow();break;case5:system("cls");change();break;case6:system("cls");disapper();break;case7:system("cls");tongji();break;case8:system("cls");listCG();break;case0:system("cls");byebye();exit(0);}}/****************************************************從鍵盤添加并保存采購信息函數(shù)********************************************/voidinput(){intn=0,i=0,k;charch;longy,m,d;if(flag==0){printf(" 未建立,采購信息數(shù)據(jù)庫為空 \n");printf(" 按任意鍵返回");getch();return;}printf(" 請輸入將要添加得采購編號(形如 001002,以回車鍵結(jié)束)\n");fflush(stdin);scanf("%s",p2->buynum);p1=head;while(p1!=NULL){if(strcmp(p2->buynum,p1->buynum)==0) /***** 找到數(shù)據(jù)庫信息中與輸入相同得采購編號 *******/{printf("printf("printf("printf("printf("printf("printf("printf("printf("
您輸入得采購編號已存在?。。?);對應零部件信息如下: ");采購編號:%s\n",p1->buynum);零部件名稱:%s\n",p1->itemname);采購日期:%s\n",p1->day);采購員名字:%s\n",p1->buyername);采購數(shù)量:%d\n",p1->count);采購價格:%f\n",p1->price);供貨單位:%s\n",p1->source);n=1;
/****
標志位*****/printf("
請按任意鍵返回!
\n");getch();system("cls");break;}p1=p1->next;}if(n!=1){system("cls");p1=head;while(p1->next!=NULL)p1=p1->next;printf(" 請輸入");p2=(structbuy*)malloc(LEN); // 開辟一個新單元fflush(stdin);for(i=0;i<7;i++){if(i==0){fflush(stdin);printf(" 采購編號(數(shù)字字符串型):");scanf("%s",p2->buynum);}if(i==1){fflush(stdin);printf(" 零部件名稱(文字或英文字符串型):");scanf("%s",p2->itemname);}if(i==2){do{printf(" 采購日期(形如****-**-**
,以回車鍵結(jié)束
):");fflush(stdin);scanf("%s",p2->day);if(p2->day[4]=='-'&&p2->day[7]=='-'&&strlen(p2->day)==10){y=(p2->day[0]-48)*1000+(p2->day[1]-48)*100+(p2->day[2]-48)*10+(p2->day[3]-48);m=(p2->day[5]-48)*10+(p2->day[6]-48);d=(p2->day[8]-48)*10+(p2->day[9]-48);k=checkdate(y,m,d);/****根據(jù)函數(shù)返回值判斷就是否要重新輸入****/if(k==1)break;}}while(1);}if(i==3){fflush(stdin);printf(" 采購員名字(文字或英文字符串型,以回車鍵結(jié)束):");scanf("%s",p2->buyername);}if(i==4){fflush(stdin);printf(" 采購數(shù)量(文字或英文字符串型,以回車鍵結(jié)束):");scanf("%d",&p2->count);while(p2->count<0){printf(" 數(shù)量不能為負數(shù),請重新輸入! \n");scanf("%f",&p2->count);}}if(i==5){fflush(stdin);printf("采購價格(數(shù)字型,以回車鍵結(jié)束):");scanf("%f",&p2->price);while(p2->price<0){printf(" 價格不能為負數(shù),請重新輸入! \n");scanf("%f",&p2->price);}}if(i==6){fflush(stdin);printf(" 供貨單位(文字或英文字符串型,以回車鍵結(jié)束):");scanf("%s",p2->source);}}p2->next=NULL;p1->next=p2;p1=head;system("cls");printf(" 所有信息如下,請核實----");while(p1!=NULL){printf(" 采購編號:%s\n",p1->buynum);printf(" 零部件名稱:%s\n",p1->itemname);printf(" 采購日期:%s\n",p1->day);printf(" 采購員名字:%s\n",p1->buyername);printf(" 采購數(shù)量:%d\n",p1->count);printf(" 采購價格:%f\n",p1->price);printf(" 供貨單位:%s\n",p1->source);printf("\n\n\n");p1=p1->next;}}save();printf(" 按任意鍵返回");fflush(stdin);scanf("%c",&ch);}/****************************************************根據(jù)采購編號查找采購信息函數(shù)**********************************************/voidnumshow(){charanum[10],ch;p1=head;if(p1==NULL){printf(" 采購信息數(shù)據(jù)庫為空\n");printf(" 按任意鍵返回");getch();system("cls");exit(0);}printf("請輸入所查零件編號(形如000001,以回車鍵結(jié)束):\n");getchar();scanf("%s",anum);while(p1!=NULL){if(strcmp(anum,p1->buynum)==0) /***找到與信息數(shù)據(jù)庫中與輸入相同得采購編號 ***/{printf(" 采購編號:%s\n",p1->buynum);printf(" 零部件名稱:%s\n",p1->itemname);printf(" 采購日期:%d\n",p1->day);printf(" 采購員名字:%s\n",p1->buyername);printf(" 采購數(shù)量:%d\n",p1->count);printf(" 采購單價:%f\n",p1->price);printf(" 供貨單位:%s\n",p1->source);break;}elsep1=p1->next;}if(p1==NULL) /********p1==NULL 表示到最后都沒有找到與信息數(shù)據(jù)庫中與輸入相同得零部件名稱 ****/{printf("文件中沒有您所查找得采購信息,請核對您得采購編號就是否輸入正確!\n");printf(" 請按任意鍵返回返回!");fflush(stdin);scanf("%c",&ch);}printf(" 按任意鍵返回");fflush(stdin);scanf("%c",&ch);}/*****************************************************根據(jù)采購零部件名稱查找采購信息****************************************/voidnameshow(){charaname[10],ch;intn=0;p1=head;if(p1==NULL){printf(" 采購信息數(shù)據(jù)庫為空\n");printf(" 按任意鍵返回");getch();system("cls");exit(0);}printf("請輸入所查零件名稱(以回車鍵結(jié)束):\n");fflush(stdin);scanf("%s",aname);while(p1!=NULL){if(strcmp(p1->itemname,aname)==0){printf(" 采購編號:%s\n",p1->buynum);printf(" 零部件名稱:%s\n",p1->itemname);printf(" 采購日期:%d\n",p1->day);printf(" 采購員名字:%s\n",p1->buyername);printf(" 采購數(shù)量:%d\n",p1->count);printf(" 采購單價:%f\n",p1->price);printf(" 供貨單位:%s\n",p1->source);n=1;}elsep1=p1->next;}if(n!=1){printf("文件中沒有您所查找得采購信息,請核對您得零部件名稱就是否輸入正確!\n");printf(" 請按任意鍵返回返回!");fflush(stdin);scanf("%c",&ch);}printf(" 按任意鍵返回");fflush(stdin);scanf("%c",&ch);}/***************************************************刪除并保存余下采購信息函數(shù)*******************************************************/voiddisapper(){charanum[10],ch;if(flag==0) /******flag==0 表示未建立文件,標志位法*******/{printf(" 未建立,采購信息數(shù)據(jù)庫為空 \n");printf(" 按任意鍵返回");getch();return;}if(head==NULL){printf("\n 采購信息數(shù)據(jù)庫為空,無法刪除 ,請按任意鍵返回:\n");getch();system("cls");return;}p1=head; /********p1 指向頭結(jié)點*******/printf(" 請輸入要刪除得采購信息編號 :\n");fflush(stdin);scanf("%s",anum);while(strcmp(anum,p1->buynum)!=0&&p1->next!=NULL)/**********找到要刪除得學號********/{p2=p1;p1=p1->next;}if(strcmp(anum,p1->buynum)==0){if(head->next==NULL)
/***********
只有一個節(jié)點得情況*********/{free(head);head=NULL;}else{if(head==p1)
/*********
要刪除得編號在第一個節(jié)點中*******/{head=p1->next;free(p1);}else{p2->next=p1->next;free(p1);}}printf(" 已刪除!\n");listCG();save();}else{printf("找不到此采購編號對應得采購信息,請核您輸入得采購編號就是否正確!");printf(" 按任意鍵返回:\n");fflush(stdin);}printf(" 按任意鍵返回");fflush(stdin);scanf("%c",&ch);}/*******************************************************修改并保存采購信息函數(shù)****************************************************/voidchange(){charanum[10],ch;intt,k;longy,m,d;if(flag==0){printf(" 未建立,采購信息數(shù)據(jù)庫為空 \n");printf(" 按任意鍵返回");getch();return;}if(head==NULL){printf("\n 采購信息數(shù)據(jù)庫為空,無法修改 ,請按任意鍵返回:\n");getch();system("cls");return;}p1=head;printf(" 請輸入要修改采購信息得采購編號(形如 001002,以空格鍵結(jié)束):\n");fflush(stdin);scanf("%s",anum);while(strcmp(anum,p1->buynum)!=0&&p1->next!=NULL)p1=p1->next;if(strcmp(anum,p1->buynum)==0){printf("就是否修改采購編號?就是(1)否(0))");/***********判斷各項就是否需要修改********/scanf("%d",&t);if(t==1){printf(" 請輸入修改后得采購編號 :\n");fflush(stdin);scanf("%s",p1->buynum);}printf(" 就是否修改零部件名稱?就是( 1)否(0))");scanf("%d",&t);if(t==1){printf(" 請輸入修改后得零部件名稱 :\n");fflush(stdin);scanf("%s",p1->itemname);}printf("就是否修改采購日期?就是(1)否(0))");scanf("%d",&t);if(t==1){do{printf(" 請輸入修改后得采購日期 (形如****-**-** ,以回車鍵結(jié)束):");fflush(stdin);scanf("%s",p2->day);if(p2->day[4]=='-'&&p2->day[7]=='-'&&strlen(p2->day)==10){y=(p2->day[0]-48)*1000+(p2->day[1]-48)*100+(p2->day[2]-48)*10+(p2->day[3]-48);m=(p2->day[5]-48)*10+(p2->day[6]-48);d=(p2->day[8]-48)*10+(p2->day[9]-48);就是否要重新輸入
k=checkdate(y,m,d); /********/if(k==1)break;elsep
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報參考:金代民族交往交流交融的考古學觀察
- 課題申報參考:減稅降費政策實施效果評估和策略優(yōu)化研究
- 二零二五版環(huán)保項目臨時工勞動合同4篇
- 基于2025年度計劃的環(huán)保項目合作協(xié)議3篇
- 2025年智能水電表更換與數(shù)據(jù)采集服務合同4篇
- 2025年度個人退房協(xié)議書范本(適用于商業(yè)地產(chǎn))4篇
- 二零二五版建筑工程公司資質(zhì)借用與施工監(jiān)督服務協(xié)議3篇
- 二零二五年度商業(yè)綜合體場地租賃合同范本6篇
- 專利授權(quán)事務全權(quán)委托合同書版B版
- 2025年度排水溝施工安全協(xié)議書范本
- GB/T 45107-2024表土剝離及其再利用技術(shù)要求
- 2024-2025學年八年級上學期1月期末物理試題(含答案)
- 商場電氣設備維護勞務合同
- 2023年國家公務員錄用考試《行測》真題(行政執(zhí)法)及答案解析
- 2024智慧醫(yī)療數(shù)據(jù)字典標準值域代碼
- 年產(chǎn)12萬噸裝配式智能鋼結(jié)構(gòu)項目可行性研究報告模板-立項備案
- 【獨家揭秘】2024年企業(yè)微信年費全解析:9大行業(yè)收費標準一覽
- 醫(yī)療器械經(jīng)銷商會議
- 《±1100kV特高壓直流換流變壓器使用技術(shù)條件》
- 1-1 擁抱夢想:就這樣埋下一顆種子【2022中考作文最熱8主題押題24道 構(gòu)思點撥+范文點評】
- 《風電場項目經(jīng)濟評價規(guī)范》(NB-T 31085-2016)
評論
0/150
提交評論