欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    汽车零部件采购管理教材.docx

    • 资源ID:1809593       资源大小:323.33KB        全文页数:45页
    • 资源格式: DOCX        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    汽车零部件采购管理教材.docx

    汽车零部件采购管理 制作人:徐倩 第 0 页 共 45 页 HUBEIHUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGYUNIVERSITY OF AUTOMOTIVE TECHNOLOGY C C 语言程序设计语言程序设计 课程设计课程设计报告报告 课设题目:课设题目: 汽车零部件采购管理汽车零部件采购管理 专专 业:业: 电子信息工程(汽车电子)电子信息工程(汽车电子) 班班 级级: : T1323T1323- -15 15 姓姓 名:名: 徐倩徐倩 成成 绩:绩: 完成日期完成日期: : 20142014 年年 1919 周周 指导教师指导教师: : 吴年志吴年志 汽车零部件采购管理 制作人:徐倩 第 1 页 共 45 页 目录目录 C 语言程序设计 - 0 课程设计报告 - 0 1.课程设计目的-1 2.需求分析 - 2 2.1 要求 - 2 2.2 任务描述 - 3 2.3 运行环境 - 4 2.4 开发工具 - 4 3.总体设计 - 4 3.1 系统流设计 - 4 3.2 系统模块设计 - 5 4.详细设计 - 6 4.1 数据结构设计 - 6 4.2 模块接口设计 - 7 1)所有函数声明 - 7 2)全局变量 - 9 3)主要模块的实现 - 9 4.3 主要功能模块的流程图 - 10 5.运行结果 - 13 5.1 欢迎界面- 13 5.2 主菜单页面-13 5.3 信息查询页面 - 14 5.4 统计菜单页面 - 14 5.5 显示信息页面 - 15 5.6 退出页面- 15 6.程序调试与测试- 16 6.1 主菜单选择测试 - 16 6.2 采购信息未从文件读入 - 17 6.3 采购信息输入调试-18 7.问题与不足 - 20 8.建议 - 21 9.编程体会 - 21 10.程序源代码 - 21 1.1.课程设计目的课程设计目的 汽车零部件采购管理 制作人:徐倩 第 2 页 共 45 页 1) 通过课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。 2) 通过课程设计,进一步掌握 C 语言中重要的数据结构。掌握并熟练运用指针、链表、结构体、文件等数据结构。 3) 通过课程设计,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。 4) 通过课程设计,培养 C 语言知识运用和自学能力,真正的把课堂上获得的知识运用起来, 培养自己对程序编写的兴趣,并能独立设计和实现一个小型系统。 5) 通过课程设计,加强了自己的程序分析能力。 2.需求分析需求分析 2.1 要求要求 1) 遵循软件开发过程的基本规范;能灵活应用,初步具备运用 C 程序解决实际问题的能力。 2) 运用结构化程序设计方法,按照课程设计题目要求,完成包括需求分析、数据结构设计、概要设计、详细设计、编写代码、调试和测试 C 程序等过程。 3) 学会利用数组、结构体、链表进行相关信息表示。 4) 功能模块划分清晰,系统结构图符合功能操作要求,且有详尽的功能描述 5) 各主要功能模块有详尽的流程图及描述, 用函数的形式实现,且调用入口、功能、出口等关系正确。 6) 所设计的 C 程序较好的可读性和可靠性; 程序书写风格规范,注释清晰。 7) 界面友好(良好的人机互交) ,凡需要输入信息时,都有较详尽的提示信息,并对输入信息有较完善的值域分析。 8) 程序经上机调试通过,不应出现语法型、功能型错误,并 汽车零部件采购管理 制作人:徐倩 第 3 页 共 45 页 获得满意的结果。 9) 学会通过各功能性测试用例测试程序的能力, 尽可能避免原则性错误的出现。 10) 掌握编写、调试和测试 C 语言程序的基本技巧,充分理解结构化程序设计的基本方法。 11) C 语言课程设计报告的内容反应实际设计过程, 且符合格式要求,无抄袭现象。 2.2 任务描述任务描述 已知在汽车生产时,需要向零部件生产厂商采购零部件,设计一个汽车零部件采购管理程序,以方便采购管理部门对采购零部件的管理。该单位每次采购都有一个采购编号,每次采购一种零部件。该程序应该具有如下功能 1) 添加并保存采购信息: 输入采购编号, 零部件名称,采购员名字,采购日期,采购价格,采购数量,供货单位,需要判断采购价格和数量是否大于零,采购编号是否已存在,采购日期是否合法(形如*-*-*,例如 2013-09-08) 。 2) 根据采购编号查询零部件采购信息 3) 根据零部件名称查询其采购信息 4) 根据采购编号修改已有采购信息: 需要判断修改后的采购编号的唯一性,采购日期的合法性(形如*-*-*,例如 2013-09-08) 。 5) 根据采购编号删除此条采购信息 汽车零部件采购管理 制作人:徐倩 第 4 页 共 45 页 6) 统计功能 2.3 运行环境运行环境 VC+6.0 编译环境 2.4 开发工具开发工具 C 语言 3.总体设计总体设计 3.1 系统流设计系统流设计 程序整体功能结构如图一所示: 显示主菜单,输入选择 开始 显示课程以及学生信息 汽车零部件采购管理 制作人:徐倩 第 5 页 共 45 页 3.2 系统模块设计系统模块设计 1) 封面模块 函数 void huanying()和函数 void byebye()构成封面模块,构造和谐人机环境。 2) 菜单模块菜单模块 函数 void menu()和函数 void choise()构成选择菜单,二级菜单 void tongji()构成统计功能菜单。 根据零部件名称统计其总数量 根据采购员名字统计其采购次数 读取文件中的采购信息 添加并保存采购信息 由采购编号查找零部件采购信息 由零部件名称查找其采购信息 修改并保存采购信息 删除并保存余下采购信息 统计采购信息 显示所有采购信息 汽车零部件采购管理 制作人:徐倩 第 6 页 共 45 页 3) 查询模块查询模块 函数 void numshow()和函数 void nameshow()分别实现根据采购编号和零部件名称查询采购信息的功能, 其中会有其他函数辅助。 4) 信息处理模块信息处理模块 函数 void change()实现信息修改功能,函数 void disapperr()实现信息删除功能,void input()实现信息添加功能,void save()实现信息保存功能,void listCG()实现信息显示功能,其中会有其他函数辅助。 5)统计模块)统计模块 函数 int number()实现根据零部件名称统计其总数量功能,int times()实现根据采购员名字显示其采购次数的功能,其中会有其他函数辅助。 6)日期审查模块)日期审查模块 函数 void checkdate()使用标志位方法实现对时间的审查。 4.详细设计详细设计 4.1 数据结构设计数据结构设计 根据系统要求,采购信息包括: 数据项名称 数据项系统表示 数据类型 数据长度 备注 采购编号 P1-buynum 字符串 10 零部件名称 P1-itemname 字符串 10 采购日期 P1-day 字符串 30 采购员名字 P1-buyername 字符串 10 汽车零部件采购管理 制作人:徐倩 第 7 页 共 45 页 采购数量 P1-count 整型 4 采购价格 P1-price 单精度 8 供货单位 P1-source 字符串 10 为了能实现系统的优越性和 c 语言的精华采用链表的建立采购信息记录表,示意图如下: 4.2 模块接口设计模块接口设计 1)所有函数声明)所有函数声明 viod huanying(); /*封面函数,显示课程题目,学生信息*/ void menu(); /*主菜单函数,显示各项功能*/ void choise(); /*根据主菜单选择并执行功能*/ void readinto(); /*读取文件内的采购信息采购信息 2 采购信息 3 采购信息 1 汽车零部件采购管理 制作人:徐倩 第 8 页 共 45 页 */ void input(); /*从键盘添加采购信息并保存到文件中*/ void listCG(); /* 显 示 所 有 采 购 信 息*/ void numshow(); /*根据采购编号查询对应采购信息并显示*/ void nameshow(); /*根据零部件名称查询其采购信息并显示*/ void change(); /*根据采购编号修改并显示采购信息*/ void disapper(); /*根据采购编号删除并显示余下采购信息*/ void tongji(); /*统计功能菜单,显示两项统计功能*/ int number(); /*根据零部件名称统计其购买总数量*/ int times(); /*根据采购员名字统计其采购次数*/ int checktime(int year,int month,int day ); /* 审 查 日 期 输 入 是 否 符 合 要 求*/ 汽车零部件采购管理 制作人:徐倩 第 9 页 共 45 页 void byebye(); /* 告 别 界 面*/ void save(); /*保存采购信息*/ 2)全局变量)全局变量 1 1,用于存储采购信息的结构体 struct buy; 2,判断文件是否正确读入的标志位变量 int flag; 3, 用 于 存 储 采 购 信 息 的 结 构 体 指 针 : struct buy *head=NULL,*p,*p1,*p2,*p3. 3)主要模块的实现)主要模块的实现 系统以 int main()为入口,首先调用 void huanying()显示课程名称和学生信息, 调用 void menu()和 void choise()实现功能显示和功能选择。 接着, 按照用户的要求, 调用 void numshow()或 void nameshow()实现查询功能,或调用 void change(),void disapper()实现修改和删除功能.不管是删除还是修改还是添加都要调用 void save()实现信息保存 功 能。 添 加和 修 改时 还 要调 用 int checktime(int year,int month,int day)函数对时间审查。 当不需要再执行各项功能时,调用 void byebye()退出管理器。 汽车零部件采购管理 制作人:徐倩 第 10 页 共 45 页 4.3 主要功能模块的流程图主要功能模块的流程图 1)封面模块(以欢迎界面为例,退出界面与此类似) 2)菜单模块 显示题目和学生信息 进入系统 显示主菜单 接受用户输入选项 是否合法? 是否为 0? 执行用户所选功能 否 是 否 是否为 7? 是否合法? 是 否 退出管理系统 是 否 是 汽车零部件采购管理 制作人:徐倩 第 11 页 共 45 页 3)查询模块(以根据采购编号查询采购信息为例) 4)信息处理模块(以添加采购信息为例) 5)统计模块(以根据零部件名称统计采购总数量为例) 输入所查询采购编号 编号是否存在 显示编号对应采购信息 返回主菜单页面 输入采购编号 是否已存在 主菜单 输入采购时间 是否合格? 输入其他信息 显示添加信息 是 否 是 否 汽车零部件采购管理 制作人:徐倩 第 12 页 共 45 页 6)日期审查模块 输入零部件名称,s=0 是否存在? 返回主菜单 s 加上其数量 否 是 输入采购时间, 并将其表示成 y,m,d 调用 void checktime()函数 是否合格 返回 1 返回 0 是 否 汽车零部件采购管理 制作人:徐倩 第 13 页 共 45 页 5.运行结果运行结果 5.1 欢迎界面欢迎界面 5.2 主菜单主菜单 汽车零部件采购管理 制作人:徐倩 第 14 页 共 45 页 5.3 信息查询页面信息查询页面 5.4 统计菜单页面统计菜单页面 汽车零部件采购管理 制作人:徐倩 第 15 页 共 45 页 5.5 显示信息页面显示信息页面 5.6 退出页面退出页面 汽车零部件采购管理 制作人:徐倩 第 16 页 共 45 页 6.程序调试与测试程序调试与测试 测试数据:测试数据: 采购编号 001001 001002 001003 001004 零部件名称 活塞 轮胎 后视镜 方向盘 采购日期 2013-09-27 2013-04-23 2013-09-08 2013-09-07 采 购 员 名字 刘尧 徐倩 卫添翼 李林琳 采购数量 90 67 90 89 采购价格 90.000000 78.000000 78.000000 67.000000 供货单位 汽院汽院 十堰十堰 黄冈黄冈 河南河南 6.1 主菜单选择测试主菜单选择测试 若用户输入错误选项,则如图显示: 汽车零部件采购管理 制作人:徐倩 第 17 页 共 45 页 6.2 采购信息未从文件读入采购信息未从文件读入 6.3采购采购信息的输入测试信息的输入测试 1 ) 若 添 加 的 采 购 编 号 已 存 在 , 则 如 图 显示: 汽车零部件采购管理 制作人:徐倩 第 18 页 共 45 页 2)若添加的采购信息日期格式输入错误,则如图显示 3)若查询的采购编号输入错误,则如图显示 4)若查询的零部件名称输入错误,则如图显示 汽车零部件采购管理 制作人:徐倩 第 19 页 共 45 页 5)若输入价格为负数时,如图显示 6)若输入的数量为负值时,如图显示 汽车零部件采购管理 制作人:徐倩 第 20 页 共 45 页 7.问题与不足问题与不足 1、需求分析中存在的问题 每次只能从键盘中添加一条采购信息, 当遇到需要添加多条信息时,比较麻烦。统计功能太少,如果要求几个零部件的总价,无法实现。 2、程序中存在的缺陷 每次运行其他功能前都要先从文件中读入,比较耗时。有些功能输入错误时无法重新输入,而是直接跳到主菜单。缓存较多。 汽车零部件采购管理 制作人:徐倩 第 21 页 共 45 页 8.建议建议 题目应更加贴近生活,这样可以让同学们看到 c 语言的有用之处,激发同学们的学习热情。课程设计的题目涉及范围应该更广。程序设计的功能应相对更加复杂一点,这样有利培养同学们的分析问题,解决问题的能力,同时也能提高同学们对代码的掌握能力。再者,就是验收时应该要学生画出链表结构图,帮助他们更加深刻的掌握知识。 9.编程体会编程体会 经历了编 c 语言课程设计后, 我对这一学期 c 语言所学内容有了更加深刻的了解和掌握,特别是一直不懂的链表和指针,现在发现自己都能运用了,很开心自己的进步。所以,虽然写程序的过程中,遇到各种问题,调试的时候也是遇到各种令人头大的问题,但能借助课程设计提高自己对指针和链表的熟练度, 提高自己对 c 语言编程的熟练度,也希望学校可以多开设一些这样的课程,既是让我们对自己所学知识的一个综合理解与使用,也可以提高我们的动手实践能力、对知识的运用能力,更是一个让我们学会独立思考的好机会。 10.程序源代码程序源代码 #include #include #include #include #include #include #define LEN sizeof(struct buy) /申请结构体空间 #define N 100 汽车零部件采购管理 制作人:徐倩 第 22 页 共 45 页 /*申明程序中运用的函数*/ void huanying(); /封面函数 void readinto(); /读取文件 void input(); /添加采购信息 void listCG(); /显示采购信息 void numshow(); /根据采购编号显示采购信息 void nameshow(); /根据零部件名称显示采购信息 void change(); /修改采购信息 void disapper(); /删除采购信息 void menu(); /显示主菜单 void choise(); /选择所需功能 void tongji(); /统计功能菜单 int number(); /根据零部件名称统计采购的零部件总数量 int times(); /根据采购员名字统计采购的零部件总数量 int checkdate(int year,int month,int day); /检测时间 void byebye(); /告别界面 void save(); /保存文件 /*定义全局变量*/ struct buy /定义结构体 char buynum10; char itemname10; char day30; char buyername10; int count; float price; char source10; struct buy *next; ; int flag=0;/*flag 为文件是否以正确读入的标志位*/ struct buy *head=NULL,*p,*p1,*p2,*p3; /*定义结构体指针*/ /*主函数*/ int main() huanying(); getch(); while(1) 汽车零部件采购管理 制作人:徐倩 第 23 页 共 45 页 menu(); /*显示主菜单*/ choise(); /*显示选择功能*/ return 0; /*封面函数*/ void huanying() printf(nnntt*n); printf(tt* *n); printf(tt* c语 言 课 程 设 计 *n); printf(tt* *n); printf(tt* 学 生 姓 名 : 徐 倩 *n); printf(tt* 指 导 老 师 : 吴 年 志 *n); printf(tt* 班 级 : T1323-15 *n); printf(tt* 学 号 : 20130231538 *n); printf(tt* 联系方式:18772961357(69180) *n); printf(tt* *n); printf(tt* 课程题目:汽车零部件采购管理程序 *n); printf(tt* *n); printf(tt*n); fflush(stdin); printf(请按回车键继续); 汽车零部件采购管理 制作人:徐倩 第 24 页 共 45 页 /* 告 别 界 面*/ void byebye() printf(nnntt*n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* *n); printf(tt* 欢迎下次使用 *n); printf(tt*n); /* 主 菜 单 函 数*/ void menu() system(cls); printf(nnntt* 欢 迎 使 用 汽 车 零 部 件 管 理 系 统*n); printf(tt | tttt|n); printf(tt |tt1,读取采购信息ttt|n); printf(tt | tttt|n); printf(tt |tt2,从键盘添加并保存采购信息t|n); 汽车零部件采购管理 制作人:徐倩 第 25 页 共 45 页 printf(tt | tttt|n); printf(tt |tt3,根据采购编号查找零件信息t|n); printf(tt | tttt|n); printf(tt |tt4,根据零部件名称查找采购信息t|n); printf(tt | tttt|n); printf(tt |tt5,修改并保存采购信息tt|n); printf(tt | tttt|n); printf(tt |tt6,删除并保存余下采购信息t|n); printf(tt | tttt|n); printf(tt |tt7,统计采购信息ttt|n); printf(tt | tttt|n); printf(tt |tt8,显示采购信息ttt|n); printf(tt | tttt|n); printf(tt |tt0,退出管理系统ttt|n); printf(tt*n); /*读入文件函数*/ void readinto() FILE *fp; /*文件指针*/ int n=0; if(fp=fopen(lingjian.txt,r)=NULL) /*打开文件时无此文件*/ printf(文件打开错误:n); exit(0); p1=(struct buy *)malloc(LEN); head=p1; p1-next =NULL; while(!feof(fp) /*读取文件内的信息*/ fscanf(fp,%s%s%s%s%d%f%s, p1-buynum,p1-itemname,p1-day,p1-buyername,&p1-count,&p1-price,p1-source); p2=(struct buy *)malloc(LEN); /*p2指向新申请的节点*/ p1-next =p2; 汽车零部件采购管理 制作人:徐倩 第 26 页 共 45 页 p3=p1; p1=p2; p1-next =NULL; free(p2); p3-next=NULL; fclose(fp); /*关闭文件*/ flag=1; printf(文件读取成功!n); listCG(); /*选择所需功能函数*/ void choise() int n; printf(-请从键盘输入您的选择(0-8内的整数) :); scanf(%d,&n); while(n8) printf(输入不合法,请再输入一次:); scanf(%d,&n); switch(n) case 1:system(cls); /*清屏*/ readinto(); break; case 2:system(cls); input(); break; case 3:system(cls); numshow(); break; case 4:system(cls); nameshow(); break; case 5:system(cls); change(); break; case 6:system(cls); 汽车零部件采购管理 制作人:徐倩 第 27 页 共 45 页 disapper(); break; case 7:system(cls); tongji(); break; case 8:system(cls); listCG(); break; case 0:system(cls); byebye(); exit(0); /*从键盘添加并保存采购信息函数*/ void input() int n=0,i=0,k; char ch; long y,m,d; if(flag=0) printf(未建立,采购信息数据库为空n); printf(按任意键返回); getch(); return; printf(请输入将要添加的采购编号(形如001002,以回车键结束)n); fflush(stdin); scanf(%s,p2-buynum); p1=head; while(p1!=NULL) if(strcmp(p2-buynum,p1-buynum)=0) /*找到数据库信息中与输入相同的采购编号*/ printf(你输入的采购编号已存在! ! !); printf(对应零部件信息如下:); printf(采购编号:%sn,p1-buynum); printf(零部件名称:%sn,p1-itemname); printf(采购日期:%sn,p1-day); printf(采购员名字:%sn,p1-buyername); printf(采购数量:%dn,p1-count); 汽车零部件采购管理 制作人:徐倩 第 28 页 共 45 页 printf(采购价格:%fn,p1-price); printf(供货单位:%sn,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=(struct buy *)malloc(LEN); /开辟一个新单元 fflush(stdin); for(i=0;ibuynum); if(i=1) fflush(stdin); printf(零部件名称(文字或英文字符串型) :); scanf(%s, p2-itemname); if(i=2) do printf(采购日期(形如*-*-*,以回车键结束):); fflush(stdin); scanf(%s,p2-day); if(p2-day4=-&p2-day7=-&strlen(p2-day)=10) 汽车零部件采购管理 制作人:徐倩 第 29 页 共 45 页 y=(p2-day0-48)*1000+(p2-day1-48)*100+(p2-day2-48)*10+(p2-day3-48); m=(p2-day5-48)*10+(p2-day6-48); d=(p2-day8-48)*10+(p2-day9-48); k=checkdate(y,m,d); /*根据函数返回值判断是否要重新输入*/ if(k=1) break; while(1); if(i=3) fflush(stdin); printf(采购员名字(文字或英文字符串型, 以回车键结束): ); scanf(%s,p2-buyername); if(i=4) fflush(stdin); printf(采购数量(文字或英文字符串型,以回车键结束) :); scanf(%d, &p2-count); while(p2-countcount); if(i=5) fflush(stdin); printf(采购价格(数字型,以回车键结束) :); scanf(%f,&p2-price); while(p2-priceprice); if(i=6) 汽车零部件采购管理 制作人:徐倩 第 30 页 共 45 页 fflush(stdin); printf(供货单位(文字或英文字符串型,以回车键结束) :); scanf(%s,p2-source); p2-next=NULL; p1-next =p2; p1=head; system(cls); printf(所有信息如下,请核实-); while(p1!=NULL) printf(采购编号:%sn,p1-buynum); printf(零部件名称:%sn,p1-itemname); printf(采购日期:%sn,p1-day); printf(采购员名字:%sn,p1-buyername); printf(采购数量:%dn,p1-count); printf(采购价格:%fn,p1-price); printf(供货单位:%sn,p1-source); printf(nnn); p1=p1-next; save(); printf(按任意键返回); fflush(stdin); scanf(%c,&ch); /*根据采购编号查找采购信息函数*/ void numshow() char anum10,ch; p1=head; if(p1=NULL) printf(采购信息数据库为空n); printf(按任意键返回); getch(); system(cls); exit(0); 汽车零部件采购管理 制作人:徐倩 第 31 页 共 45 页 printf(请输入所查零件编号(形如000001,以回车键结束):n); getchar(); scanf(%s,anum); while(p1!=NULL) if(strcmp(anum,p1-buynum)=0) /*找到与信息数据库中与输入相同的采购编号*/ printf(采购编号:%sn,p1-buynum); printf(零部件名称:%sn,p1-itemname); printf(采购日期:%dn,p1-day); printf(采购员名字:%sn,p1-buyername); printf(采购数量:%dn,p1-count); printf(采购单价:%fn,p1-price); printf(供货单位:%sn,p1-source); break; else p1=p1-next; if(p1=NULL) /*p1=NULL 表示到最后都没有找到与信息数据库中与输入相同的零部件名称*/ printf(文件中没有您所查找的采购信息,请核对您的采购编号是否输入正确!n); printf(请按任意键返回返回!); fflush(stdin); scanf(%c,&ch); printf(按任意键返回); fflush(stdin); scanf(%c,&ch); /*根据采购零部件名称查找采购信息*/ void nameshow() char aname10,ch; int n=0; p1=head; if(p1=NULL) 汽车零部件采购管理 制作人:徐倩 第 32 页 共 45 页 printf(采购信息数据库为空n); printf(按任意键返回); getch(); system(cls); exit(0); printf(请输入所查零件名称(以回车键结束):n); fflush(stdin); scanf(%s,aname); while(p1!=NULL) if(strcmp(p1-itemname,aname)=0) printf(采购编号:%sn,p1-buynum); printf(零部件名称:%sn,p1-itemname); printf(采购日期:%dn,p1-day); printf(采购员名字:%sn,p1-buyername); printf(采购数量:%dn,p1-count); printf(采购单价:%fn,p1-price); printf(供货单位:%sn,p1-source); n=1; else p1=p1-next; if(n!=1) printf(文件中没有您所查找的采购信息,请核对您的零部件名称是否输入正确!n); printf(请按任意键返回返回!); fflush(stdin); scanf(%c,&ch); printf(按任意键返回); fflush(stdin); scanf(%c,&ch); /*删除并保存余下采购信息函数*/ void disapper() 汽车零部件采购管理 制作人:徐倩 第 33 页 共 45 页 char anum10,ch; if(flag=0) /*flag=0 表 示 未 建立文件,标志位法*/ printf(未建立,采购信息数据库为空n); printf(按任意键返回); getch(); return; if(head=NULL) printf(n 采购信息数据库为空,无法删除,请按任意键返回:n); getch(); system(cls); return; p1=head; /*p1指向头结点*/ 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) /*只有一个节点的情况*/ free(head); head=NULL; else if(head=p1) /*要删除的编号在第一个节点中*/ head=p1-next; free(p1); else 汽车零部件采购管理 制作人:徐倩 第 34 页 共 45 页 p2-next=p1-next; free(p1); printf(已删除!n); listCG(); save(); else printf(找不到此采购编号对应的采购信息,请核您输入的采购编号是否正确!); printf(按任意键返回:n); fflush(stdin); printf(按任意键返回); fflush(stdin); scanf(%c,&ch); /*修改并保存采购信息函数*/ void change() char anum10,ch; int t,k; long y,m,d; if(flag=0) printf(未建立,采购信息数据库为空n); printf(按任意键返回); getch(); return; if(head=NULL) printf(n 采购信息数据库为空,无法修改,请按任意键返回:n); getch(); system(cls); return; p1 = head; printf(请输入要修改采购信息的采购编号(形如001002,以空格键结 汽车零部件采购管理 制作人:徐倩 第 35 页 共 45 页 束):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(请输入修改后的采购日期(形如*-*-*,以回车键结束):); fflush(stdin); scanf(%s,p2-day); if(p2-day4=-&p2-day7=-&strlen(p2-day)=10) y=(p2-day0-48)*1000+(p2-day1-48)*100+(p2-day2-48)*10+(p2-day3-48); m=(p2-day5-48)*10+(p2-day6-48); d=(p2-day8-48)*10+(p2-day9-48); k=checkdate(y,m,d); /*根据函数返回值判断是否要重新输入*/ 汽车零部件采购管理 制作人:徐倩 第 36 页 共 45 页 if(k=1) break; else printf(输入错误!n); while(1); printf(是否修改采购员名字?是(1)否(0)); scanf(%d,&t); if(t=1) printf(请输入修改后的采购员名字:n); fflush(stdin); scanf(%s,p1-buyername); printf(是否修改采购数量?是(1)否(0)); scanf(%d,&t); if(t=1) printf(请输入修改后的采购数量:n); fflush(stdin); scanf(%d,&p1-count); while(p1-countcount); printf(是否修改采购价格?是(1)否(0)); scanf(%d,&t); if(t=1) printf(请输入修改后的采购采购价格:n); fflush(stdin); scanf(%f,&p1-price); while(

    注意事项

    本文(汽车零部件采购管理教材.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开