c语言设备管理系统.docx

上传人:b****5 文档编号:7640407 上传时间:2023-05-11 格式:DOCX 页数:18 大小:200.13KB
下载 相关 举报
c语言设备管理系统.docx_第1页
第1页 / 共18页
c语言设备管理系统.docx_第2页
第2页 / 共18页
c语言设备管理系统.docx_第3页
第3页 / 共18页
c语言设备管理系统.docx_第4页
第4页 / 共18页
c语言设备管理系统.docx_第5页
第5页 / 共18页
c语言设备管理系统.docx_第6页
第6页 / 共18页
c语言设备管理系统.docx_第7页
第7页 / 共18页
c语言设备管理系统.docx_第8页
第8页 / 共18页
c语言设备管理系统.docx_第9页
第9页 / 共18页
c语言设备管理系统.docx_第10页
第10页 / 共18页
c语言设备管理系统.docx_第11页
第11页 / 共18页
c语言设备管理系统.docx_第12页
第12页 / 共18页
c语言设备管理系统.docx_第13页
第13页 / 共18页
c语言设备管理系统.docx_第14页
第14页 / 共18页
c语言设备管理系统.docx_第15页
第15页 / 共18页
c语言设备管理系统.docx_第16页
第16页 / 共18页
c语言设备管理系统.docx_第17页
第17页 / 共18页
c语言设备管理系统.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

c语言设备管理系统.docx

《c语言设备管理系统.docx》由会员分享,可在线阅读,更多相关《c语言设备管理系统.docx(18页珍藏版)》请在冰点文库上搜索。

c语言设备管理系统.docx

c语言设备管理系统

集团标准化工作小组#Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

 

c语言设备管理系统

课程设计说明书

学院、系:

专业:

学生姓名:

学号:

设计题目:

设备管理系统

起迄日期:

指导教师:

日期:

2017年5月12日

1设计目的

提高程序设计能力,检验课堂教学内容,掌握程序设计的基本方法和调试技能。

通过课程实训,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构;进一步掌握C语言中的重要数据结构;掌握并熟练运用指针,链表,结构体和文件等结构;提高程序开发哪里,能运用合理的控制流编写清晰高效的程序;培养C语言只是运用与自学能力,加强程序分析能力。

2任务概述

功能:

设备管理系统应包含各种设备的全部信息,每台设备为一条记录(同一时间同一部门购买的若干台相同设备可作为1条记录),包括设备号、设备名称、领用人、所属部门、数量、购买时间、价格等。

能够显示和统计各种设备的信息。

分步实施:

1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;

2、完成最低要求:

建立一个文件,包含一个部门10台设备的信息,能对文件进行

补充、修订、删除,能统计所有设备的总价值。

3、进一步要求:

完成设备按种类、按所属部门进行统计。

3模块划分

系统可设计为:

实验设备信息写入模块

实验设备信息输出模块.

实验设备信息查询模块

实验设备信息添加模块

实验设备信息删除模块

实验设备信息查询模块

实验设备信息统计模块

结构体成员包括设备号,设备名称,设备领用人,设备所属部门,设备数量,设备购买时间,设备价格。

4主要函数说明及其N-S图

主函数流程图

输入数字number

Tnumber==1F

chec()Tnumber==2F

add()Tnumber==3F

del()Tnumber==4F

alt()Tnumber==5F

count()Tnumber==0F

退出系统

N-S图

查询记录

读入/写入文件

 

 

添加数据

删除数据

修改数据

 

统计数据

 

5程序运行数据及其结果

图进入界面

图菜单&功能选择

图添加数据

图查看数据

图删除数据

图修改数据

图统计数据

6课程设计心得

经历了大一上半学期C语言课程,C语言笔试,C语言机试的“洗礼”,让我对C语言的有了进一步的认识,深深认识到自己学习的还不够,平时敲的代码也太少,作为一名软件工程的学生,感到深深的愧疚,对不起老师,对不起父母,更对不起自己,同时为自己将来毕业后的命运感到一份担忧。

在大一下学期C语言实训中,不仅有网上已有成果的借鉴与分析,以及向同学的请教,还有相关资料的查阅,既加深了自身能力的认知与对自己不足的体会,也优化了和同学的关系,真可谓一举两得。

同时还得出一个结论:

亲身下河知深浅,亲口尝梨知酸甜!

作为一名软件工程的学生,平时在电脑跟前敲代码的过程是必需的,谁也躲不了,一份努力,一份收获,同时,学习C语言需要细密又严谨的思维,良好的操作习惯,这样才有可能在编程的道路上百尺竿头更进一步!

也希望各位老师、身边的同学监督,更需要自己的积极自省。

期待三年后一个成熟优秀的自己!

附录:

#include<>

#include<>

#include<>

#include<>

voidmenu();看设备信息\n2.添加设备信息\n3.删除设备信息\n4.修改设备信息\n5.统计设备信息\n0.退出系统");

printf("\t\t请选择你的功能(选择0~5)[]\b\b");

scanf("%d",&a);

switch(a)

{

case0:

return;

case1:

chec();break;

case2:

add();break;

case3:

del();break;

case4:

alt();break;

case5:

count();break;

default:

printf("信息有误!

请检查后重新输入\n");

}

}

voidread()

{

No=0;

FILE*fp=fopen("D:

\\","r+");el)

fwrite(&a[i],sizeof(structarray),1,fp);

fclose(fp);

}

voidchec()

{

inti;

printf("设备号设备名称领用人所属部门数量购买时间价格\n");

for(i=0;i

{

if(a[i].del==0)

printf("%8s%20s%20s%20s%20s%20s%20s\n",a[i].ano,a[i].aname,a[i].aowner,a[i].aapartment,a[i].aamount,a[i].atime,a[i].aprice);

}

getchar();

getchar();

menu();

}

voidadd()

{

chars;

printf("请输入要添加的设备号:

\n");

scanf("%s",a[No].ano);

printf("请输入要添加的设备名称:

\n");

scanf("%s",a[No].aname);

printf("请输入要添加的设备领用人:

\n");

scanf("%s",a[No].aowner);

printf("请输入要添加的设备的所属部门:

\n");

scanf("%s",a[No].aapartment);

printf("请输入要添加的设备数量:

\n");

scanf("%s",a[No].aamount);

printf("请输入要添加的设备购买时间:

\n");

scanf("%s",a[No].atime);

printf("请输入要添加的设备价格:

\n");

scanf("%s",a[No].aprice);

a[No].del=0;

No+=1;

printf("请问是否继续添加(Y/N)(不区分大小写)\n");

while

(1)

{

getchar();

gets(&s);

if(s=='Y'||s=='N'||s=='y'||s=='n')

break;

else{

puts("信息有误!

请检查后重新输入\n");

puts("按任意键重新输入!

");

getchar();

getchar();

getchar();

}

}

if(s=='Y'||s=='y')

add();

elseif(s=='N'||s=='n')

system("cls");

menu();

}

voiddel()

{

charch[20],s;

inti;

printf("请输入要删除的设备编号:

(0键返回菜单栏)\n");

printf("设备号设备名称领用人所属部门数量购买时间价格\n");

for(i=0;i

{

if(a[i].del==0)

printf("%4d%20s%20s%20s%20s%20s%20s%20s\n",i+1,a[i].ano,a[i].aname,a[i].aowner,a[i].aapartment,a[i].aamount,a[i].atime,a[i].aprice);

}

while

(1)

{

scanf("%s",ch);

i=atoi(ch);

if(i>=1&&i<=No)

break;

elseif(i==0)

return;

elseputs("信息有误!

请检查后重新输入\n");

}

a[i-1].del=1;

printf("是否继续删除(Y/N)(不区分大小写)\n");

while

(1)

{

getchar();

gets(&s);

if(s=='Y'||s=='N'||s=='y'||s=='n')

break;

elseputs("信息有误!

请检查后重新输入\n");

}

if(s=='Y'||s=='y')

del();

elseif(s=='N'||s=='n')

system("cls");

menu();

}

voidalt()

{

chars,ch[20];

inti,j;

printf("请输入修改的设备的编号:

\n");

printf("设备号设备名称领用人所属部门数量购买时间价格\n");

for(i=0;i

{

printf("%4d%20s%20s%20s%20s%20s%20s%20s\n",i+1,a[i].ano,a[i].aname,a[i].aowner,a[i].aapartment,a[i].aamount,a[i].atime,a[i].aprice);

}

while

(1)

{

scanf("%s",ch);

i=atoi(ch);

if(i>=1&&i<=No)break;

elseif(i==0)return;

elseputs("信息有误!

请检查后重新输入\n");

}

if(a[i-1].del==1)

{

printf("该设备已被删除!

\n");

return;

}

printf("请输入您要修改的内容的编号:

\n1.设备号\n2.设备名称\n3.领用人\n4.所属部门\n5.数量\n6.购买时间\n7.价格\n0.返回菜单栏\n");

while

(1)

{

scanf("%s",ch);

j=atoi(ch);

if(j>=1&&j<=7)

break;

elseif(i==0)

{

return;

}

elseputs("信息有误!

请检查后重新输入\n");

}

printf("请输入要修改的信息:

\n");

switch(j)

{

case1:

{scanf("%s",a[i-1].ano);

break;}

case2:

{scanf("%s",a[i-1].aname);

break;}

case3:

{scanf("%s",a[i-1].aowner);

break;}

case4:

{scanf("%s",a[i-1].aapartment);

break;}

case5:

{scanf("%s",a[i-1].aamount);

break;}

case6:

{scanf("%s",a[i-1].atime);

break;}

case7:

{scanf("%s",a[i-1].aprice);

break;}

}

printf("是否继续修改(Y/N)(不区分大小写)\n");

while

(1)

{

getchar();有设备的总价值。

\n2.设备所属部门。

\n3.设备种类。

\n0.返回菜单栏\n");

while

(1)

{

scanf("%s",ch);

j=atoi(ch);

if(j>=1&&j<=3)

break;

elseif(j==0)

{

return;

}

elseputs("信息有误!

请检查后重新输入\n");

}

switch(j)

{

case1:

{

for(i=0;i

{

if(a[i].del==0)

sum=atoi(a[i].aprice)*atoi(a[i].aamount)+sum;

}

printf("当前设备的总价值为%d。

\n",sum);

break;

}

case2:

{

printf("设备所属部门统计结果为:

\n所属部门数量总价值\n");

for(i=0;i

{

sum=0;

n=0;

strcpy(temp,a[i].aapartment);apartment)==0&&i>j)

break;

elseif(strcmp(temp,a[j].aapartment)==0&&i

{

sum=sum+atoi(a[j].aamount)*atoi(a[j].aprice);

n=n+atoi(a[j].aamount);

}

}

if(strcmp(temp,a[j].aapartment)==0&&i>j)

continue;

if(a[i].del==0)

{sum=sum+atoi(a[i].aamount)*atoi(a[i].aprice);

n=n+atoi(a[i].aamount);

}

if(sum==0)

continue;

printf("%20s%20d%20d\n",a[i].aapartment,n,sum);

}

break;

}

case3:

{

printf("设备种类统计结果为:

\n设备名数量总价值\n");

for(i=0;i

{

sum=0;

n=0;

strcpy(temp,a[i].aname);

for(j=0;j

{

if(strcmp(temp,a[j].aname)==0&&i>j)

break;

elseif(strcmp(temp,a[j].aname)==0&&i

{

sum=sum+atoi(a[j].aamount)*atoi(a[j].aprice);

n=n+atoi(a[j].aamount);

}

}

if(strcmp(temp,a[j].aname)==0&&i>j)

continue;

if(a[i].del==0)

{sum=sum+atoi(a[i].aamount)*atoi(a[i].aprice);

n=n+atoi(a[i].aamount);

}

if(sum==0)

continue;

printf("%20s%20d%20d\n",a[i].aname,n,sum);

}

break;

}

}

printf("请问是否继续统计(Y/N)(不区分大小写)\n");

while

(1)

{

getchar();

gets(&s);

if(s=='Y'||s=='N'||s=='y'||s=='n')break;

elseputs("信息有误!

检查后重新输入\n");

}

if(s=='Y'||s=='y')

count();

elseif(s=='N'||s=='n')

system("cls");

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2