C语言实验设备管理系统_第1页
C语言实验设备管理系统_第2页
C语言实验设备管理系统_第3页
C语言实验设备管理系统_第4页
C语言实验设备管理系统_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、wordC语言课程设计实验报告学生姓名 李云龙 指导教师 方红琴 学生学号 110202218 日 期: 1课程题目 实验设备信息包括:设备编号,设备种类(如:微机、打印机、扫描仪等等),设备名称,设备价格,设备购入日期,是否报废,报废日期等。主要功能:1录入设备信息2修改设备信息3查询设备信息1按设备编号查询2按设备名称查询4对设备按种类进行分类统计5报废设备登记。6报废设备统计。2程序设计思路 需求分析 实验室设备信息用文件存储,提供文件的输入输出操作;要能够完成设备的录入和修改,需要提供设备添加和修改操作;实现对设备进行分类统计,需要提供排序操作;实现对设备查询需要提供查找操作,设备的查

2、询可根据设备编号 设备种类 设备购入日期 正常设备未报废的等多种方式查询;另外还要根据键盘式选择菜单以实现功能选择。 整个系统可设计为实验设备信息输入模块 实验设备信息修改模块 实验设备分类统计模块 实验设备查询模块和实验设备报废信息模块。 建立实验设备信息结构体,结构体成员包括设备编号 设备种类 设备名称 设备价格 设备购入日期 是否报废 报废日期。实验报废设备信息模块实验设备信息输入模块实验设备信息修改模块实验设备信息查询模块实验设备分类统计模块退出实验设备管理系统设计3功能模块图4数据结构设计由需求分析可知,系统分为6大局部,每局部通过主函数完成选择,分别提供添加、修改、查询、统计、报废

3、、退出等功能,为了方便使用,采取了两个选择菜单,分别是在主函数和统计函数下的选择菜单。主函数提供输入、功能处理和输出局部的函数调用。使用结构体来存放数据。因此,对于实验设备信息的修改、调用均在结构体中进行。在数据的存储中,将文件存储在设备信息管理的文件中,使用循环语句实现对设备信息的添加和修改,每循环一次读入一个设备信息。使用修改语句时,执行的是追加操作。 5程序代码 #include"stdio.h"#include"string.h"#define null 0int t=0;int menu();/菜单 void lr();/录入信息 void x

4、g();/修改 void cx();/查询 void cx_sbh();/设备号查询 void cx_mc();/设备名称查询 void tj();/统计 void bf();/报废信息 void bf_dj();/报废登记 void bf_tj();/报废统计 typedef struct shebei char id10; char name15; char kind15; char over15; int yesno; char time10; char price10; shebei;shebei sb200;void lr()/录入信息 while(1) printf("&

5、gt;>>>>>>>>>提示:输入0那么返回主菜单!n"); printf("n请你输入设备ID号:"); scanf("%s",sbt.id); if(strcmp(sbt.id,"0")=0) main(); printf("n请输入设备名称:"); scanf("%s",); printf("n请输入设备种类:"); scanf("%s",sbt.kind); print

6、f("n请输入报废日期:"); scanf("%s",sbt.over); printf("n请输入设备是否报废,1、没报废,0、报废:"); scanf("%d",&sbt.yesno); printf("n请输入设备购置时间:"); scanf("%s",sbt.time); printf("n请输入设备价格:"); scanf("%s",sbt.price); printf(">>>>&g

7、t;>>>>>提示:已经完成一条记录的添加。n"); t+; void xg()/修改 char find20; t=0; printf("请输入要修改的设备ID号:"); scanf("%s",find); while(1) if(strcmp(sbt.id,find)=0) /如果找到的话返回的是符合要求 break; else t+; int x; while(1) printf("确认修改请输入任意数字否那么输入0重新输入设备原id:"); scanf("%d",&a

8、mp;x); if(x=0) break; else printf("请输入新设备号(原来是 %s ):",sbt.id); scanf("%s",sbt.id); printf("请输入新设备名称(原来是 %s ):",); scanf("%s",); printf("请输入新设备设备种类名称(原来是 %s ):",sbt.kind); scanf("%s",sbt.kind); printf("请输入新设备报废日期名称(原来是 %

9、s ):",sbt.over); scanf("%s",sbt.over); printf("请输入新设备是否报废,1、没报废,0、报废(原来是 %d):",sbt.yesno); scanf("%d",&sbt.yesno); printf("请输入新设备购置时间(原来是 %s ):",sbt.time); scanf("%s",sbt.time); printf("请输入新设备价格(原来是 %s ):",sbt.price); scanf("%

10、s",sbt.price); printf("n>>>>>>>>>>提示:该项记录资料已经成功修改!n"); printf("退回主菜单请输入0n"); printf("继续操作请输入1n"); scanf("%d",&x); switch(x) case 0:main();break; case 1:xg();break; default:printf("输入无效,自动返回主菜单n");main();break; v

11、oid cx()/查询 int choice; do printf("ttt-n"); printf("ttt* 1-按设备号查找 *n"); printf("ttt* 2-按设备名称查找 *n"); printf("ttt* 0-退出 *n"); printf("ttt*·*·*·*·*·*·*·*·*·*·*·*|n"); scanf("%d",&choi

12、ce); getchar(); switch(choice) case 0:menu();break; case 1:cx_sbh();break; case 2:cx_mc();break; default:printf("输入无效请重新输入n");cx(); break; while(choice!=0);cx_sbh()/设备号查询 int choice;char find20;int t=0; printf("请输入您要查询的设备号n");scanf ("%s",find);getchar();do if(strcmp(sbt

13、.id,find)=0&&sbt.yesno=1) /1表示设备没报废 printf("设备号 设备名称 设备种类 报废日期 是否报废 购置时间 价格n"); printf("n%-13s%-11s%-7s%-10s%-13d%-10s%-5sn",sbt.id,,sbt.kind,sbt.over,sbt.yesno,sbt.time,sbt.price); t+;else t+; while (t<100); printf("键入数字1返回主菜单n"); printf("键入数字任意

14、键返回上层菜单n"); scanf("%d",&choice); if (choice=1) main(); else cx();cx_mc()/设备名称查询 int choice;char ming20;t=0; printf("n输入你要查询的设备名称:"); scanf("%s",ming); do if(strcmp(,ming)=0&&sbt.yesno=1) /1表示设备没报废 printf("设备号 设备名称 设备种类 报废日期 是否报废 购置时间 价格n&qu

15、ot;); printf("n%-13s%-11s%-7s%-10s%-13d%-10s%-5sn",sbt.id,,sbt.kind,sbt.over,sbt.yesno,sbt.time,sbt.price); t+; else t+; while (t<100); printf("键入数字1返回主菜单n"); printf("键入数字任意键返回上层菜单n"); scanf("%d",&choice); if (choice=1) main(); else cx(); tj()/统

16、计t=0;int choice;char tong20;printf("n输入你要统计的设备种类:"); scanf("%s",tong); do if(strcmp(sbt.kind,tong)=0&&sbt.yesno=1) /1表示设备没报废 printf("设备号 设备名称 设备种类 报废日期 是否报废 购置时间 价格n"); printf("n%-13s%-11s%-7s%-10s%-13d%-10s%-5sn",sbt.id,,sbt.kind,sbt.over,sbt.

17、yesno,sbt.time,sbt.price); t+; else t+; while (t<100); printf("键入数字1返回主菜单n"); printf("键入数字任意键返回上层菜单n"); scanf("%d",&choice); if (choice=1) main() ; bf() /报废信息 int choice; do printf("ttt-n"); printf("ttt* 1-登记报废信息 *n"); printf("ttt* 2-报废设备

18、统计 *n"); printf("ttt* 0-退出 *n"); printf("ttt*·*·*·*·*·*·*·*·*·*·*·*|n"); scanf("%d",&choice); getchar(); switch(choice) case 0:menu();break; case 1:bf_dj();break; case 2:bf_tj();break; default:printf("

19、输入无效请重新输入n");bf(); break; while(choice!=0);bf_dj()/报废登记 char find20; t=0; printf("请输入要登记的设备ID号:"); scanf("%s",find); while(1) if(strcmp(sbt.id,find)=0) /如果找到的话返回的是符合要求 break; else t+; int x; while(1) printf("完成登记请输入0否那么输入任意数再进行修改:"); scanf("%d",&x); i

20、f(x=0) break; printf("请输入新设备是否报废1、没报废,0、报废(原来是 %d ):",sbt.yesno); scanf("%d",&sbt.yesno); printf("n>>>>>>>>>>提示:该项记录资料已经成功登记!n"); scanf("%d",&x); switch(x) case 0:main();break; case 1:bf();break; default:printf("输入无效,

21、自动返回主菜单n");main();break; bf_tj()/报废统计 int choice;char find20;t=0;printf("n输入你要统计的报废设备种类:"); scanf("%s",find); do if(strcmp(sbt.kind,find)=0&&sbt.yesno=0) /0表示设备报废 printf("设备号 设备名称 设备种类 报废日期 是否报废 购置时间 价格n"); printf("n%-13s%-11s%-7s%-10s%-13d%-10s%-5sn&q

22、uot;,sbt.id,,sbt.kind,sbt.over,sbt.yesno,sbt.time,sbt.price); t+; else t+; while (t<3); printf("键入数字1返回主菜单n"); printf("键入数字任意键返回上层菜单n"); scanf("%d",&choice); if (choice=1) main(); int menu() int choice; printf("nnn"); printf("ttt-n");

23、printf("ttt+ 实验设备管理系统 |n"); printf("ttt-n"); printf("ttt+ 1-录入设备信息 |n"); printf("ttt+ 2-修改设备信息 |n"); printf("ttt+ 3-查询设备信息 |n"); printf("ttt+ 4-统计设备信息 |n"); printf("ttt+ 5-报废设备信息 |n"); printf("ttt+ 0-*-EXIT-* |n"); print

24、f("ttt+*·*·*·*·*·*·*·*·*·*·|n"); printf("ttt-n");printf("请输入你要操作的序号:"); scanf("%d", &choice); return choice; main() int choice; choice=-1; choice=menu(choice); do switch (choice) case 0: printf("n>&

25、gt;>>>>>>>>提示:已经退出系统,ByeBye!n"); break; case 1: lr(); break; case 2: xg(); break; case 3: cx(); break; case 4: tj(); break; case 5: bf(); break; default: printf("n>>>>>>>>>>提示:输入错误!n"); break; while(choice!=0); 6程序运行结果1、主函数运行,显示主菜单2、输入数字1,进入录入菜单3 、返回主菜单,选择2,进入修改界面: 4、选择3, 进入设备查询菜单: 4.1、选择1,进入按设备号查找信息4.2、选择2,进入按设备名称查找信息5、选择4,进入统计界面,按照设备种类进行统计。 6、选择5,进入报废信息菜单6.1、 选择1,进入报废信息登记。6.2、选择2,进入报废信息统计。7、选择0,退出系统. 7编程中遇到的困难及解决方法 在编程的过程中,很容易出现一个问题,就时少大括号“的问题。按照计算机所指出的错误位置寻找是不容易找出错误的。直到整个程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论