古树名木管理系统Word文档格式.docx
- 文档编号:16500433
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:29
- 大小:230.72KB
古树名木管理系统Word文档格式.docx
《古树名木管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《古树名木管理系统Word文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
3)编译一个应用系统程序,形成一个软件系统。
三、数据结构设计及用法说明
1、本程序使用到了三个struct,分别是
(1)structtree/*古树名木养护信息*/
{charnumber[5];
/*编号*/
chararea[10];
/*区号*/
charname[100];
/*树名*/
charxueming[100];
/*学名*/
charbranch[100];
/*科属*/
intage;
/*树龄*/
charday[11];
/*确认时间*/
intrank;
/*保护级别*/
charplace[100];
/*栽植地点*/
}tree[MAX];
(2)structcity/*城区信息*/
{charcityarea[7];
charareaname[20];
/*区名*/
charmanagement[30];
/*主管部门*/
charaddress[30];
/*地址*/
chartel[13];
/*电话*/
charworker[20];
/*负责人*/
}city[MAX];
(3)structprotection/*古树名木养护信息*/
{charcityareas[7];
chartreenumber[5];
/*古树名木编号*/
charprotecter[30];
/*养护人*/
chardata[11];
/*养护日期*/
charmeasure[30];
/*养护措施*/
charstate[20];
/*生长状况*/
}pro[MAX];
2、本段程序在main函数中嵌套了所有子函数,包括“voidInput();
/*古树基本信息录入*/”、“voidDisplay();
/*古树信息浏览*/、“voidFind();
/*古树信息查询*/”、“voidModify();
/*删除*/”、“voidChange();
/*修改*/”、“voidInputcity();
/*城区信息录入*/”、“voidDisplaycity();
/*城区信息浏览*/”、“voidChangecity();
/*城区信息修改*/”、“voidInputprotection();
/*养护信息录入*/”、“voidDisplayprotection();
/*养护信息浏览*/”、“voidChangeprotection()/*修改*/”。
2)录入古树名木信息
3)浏览古树名木信息
4)查询古树名木信息(按古树名查找)
(按编号查找)
5)删除古树信息
(删除后的信息浏览)
6)录入城区信息
6)城区信息浏览
7)从城区信息中查询某城区的古树名木
8)从城区信息中删除某古树名木
9)录入古树名木养护信息
10)浏览古树名木养护信息
11)修改古树名木养护信息
(修改后的古树名木养护信息浏览)
12)退出系统
七、设计体会和反思
#include<
stdio.h>
string.h>
stdlib.h>
conio.h>
#defineMAX1000
structtree
{
charnumber[5];
structcity
charcityarea[7];
structprotection
charcityareas[7];
main()/*主函数*/
voidInput();
/*古树名木基本信息录入*/
voidDisplay();
/*浏览*/
voidFind();
/*查询*/
voidModify();
/*删除*/
voidChange();
/*修改*/
voidInputcity();
/*城区基本信息录入*/
voidDisplaycity();
/*城区基本信息浏览*/
voidChangecity();
/*城区基本信息修改*/
voidInputprotection();
/*古树名木养护基本信息录入*/
voidDisplayprotection();
/*古树名木养护基本信息浏览*/
voidChangeprotection();
/*古树名木养护基本信息修改*/
intm,n;
printf("
\n"
);
欢迎进入'
城区古树名木信息管理系统'
\n"
进入请按'
1'
:
"
scanf("
%d"
&
m);
if(m==1)
{for(;
;
)
{
printf("
主菜单\n"
【1.古树信息录入】\n"
【2.古树信息浏览】\n"
【3.古树信息查询】\n"
【4.古树信息删除】\n"
【5.古树信息修改】\n"
【6.城区基本信息录入】\n"
【7.城区基本信息浏览】\n"
【8.城区基本信息修改】\n"
【9.古树名木养护基本信息录入】\n"
【10.古树名木养护基本信息浏览】\n"
【11.古树名木养护基本信息修改】\n"
【12.退出系统】\n"
请输入选择项(1-12):
n);
\n\n"
if(n>
0&
&
n<
13)
{
switch(n)
{
case1:
Input();
break;
case2:
Display();
case3:
Find();
case4:
Modify();
case5:
Change();
case6:
Inputcity();
case7:
Displaycity();
case8:
Changecity();
case9:
Inputprotection();
case10:
Displayprotection();
case11:
Changeprotection();
case12:
谢谢使用!
printf("
再见!
exit(0);
}
}
else
输入错误!
请退出!
break;
}}
{printf("
\n\n\n\n"
}
}
voidFind()/*查询*/
{
FILE*fp;
inti;
intchoose,t;
charans[100];
do
1.按古树名查找\n"
2.按编号查找\n"
返回主菜单(其他数字)\n"
scanf("
choose);
if(choose==1)
printf("
输入所查古树名:
scanf("
%s"
ans);
t=-1;
if(choose==1)
for(i=0;
i<
MAX;
i++)if(strcmp(ans,tree[i].name)==0)
{
t=i;
fp=fopen("
tree"
"
rb"
for(i=0;
fread(&
tree[i],sizeof(structtree),1,fp)==1;
i++)
%5s%5s%8s%8s%8s%2d%8s%8d%8s\n"
tree[t].number,tree[t].area,tree[t].name,tree[t].xueming,tree[t].branch,tree[t].age,tree[t].day,tree[t].rank,tree[t].place);
}
if(t==-1)printf("
不存在该信息\n"
elseif(choose==2)
输入所查编号:
if(choose==2)
i++)
if(strcmp(ans,tree[i].number)==0)
{t=i;
elsereturn;
}while
(1);
voidDisplay()/*浏览*/
古树信息\n"
--------------------------------------------------------------------------------\n"
编号区号树名学名科属树龄确认时间保护级别栽植地点\n"
for(i=0;
tree[i].number,tree[i].area,tree[i].name,tree[i].xueming,tree[i].branch,&
tree[i].age,tree[i].day,&
tree[i].rank,tree[i].place);
}
fclose(fp);
voidInput()/*输入*/
intn;
wb"
for(n=0;
n++)
n=%d输入序号n(当输入n=-1时,返回),n="
n++);
if(n==-1)
fclose(fp);
return;
else
%s%s%s%s%s%d%s%d%s"
tree[n].number,tree[n].area,tree[n].name,tree[n].xueming,tree[n].branch,&
tree[n].age,&
tree[n].day,&
tree[n].rank,tree[n].place);
fwrite(&
tree[n],sizeof(structtree),1,fp);
voidModify()/*删除*/
inti,flag,n,j;
chars[5];
rb+"
rewind(fp);
tree[i].number,tree[i].area,tree[i].name,tree[i].xueming,tree[i].branch,tree[i].age,tree[i].day,tree[i].rank,tree[i].place);
n=i;
输入待删除古树编号:
s);
for(i=0,flag=1;
flag&
n;
if(strcmp(s,tree[i].number)==0)
for(j=i;
j<
n-1;
j++)
{
strcpy(tree[j].area,tree[j+1].area);
strcpy(tree[j].number,tree[j+1].number);
strcpy(tree[j].name,tree[j+1].name);
strcpy(tree[j].xueming,tree[j+1].xueming);
strcpy(tree[j].branch,tree[j+1].branch);
tree[j].age=tree[j+1].age;
strcpy(tree[j].day,tree[j+1].day);
tree[j].rank=tree[j+1].rank;
strcpy(tree[j].place,tree[j+1].place);
flag=0;
if(!
flag)
n=n-1;
else
没有此号\n"
fwrite(&
tree[i],sizeof(structtree),1,fp);
r"
fread(&
}
voidChange()/*修改*/
inti,n;
intflag=0;
请输入要修改的古树编号:
number);
=MAX;
if(strcmp(number,tree[i].number)==0)
);
--------------------------------------------------------------------------------------------------\n\n"
flag=1;
if(flag==0)
请返回!
return;
fseek(fp,n*sizeof(structtree),0);
fwrite(&
p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 树名 木管 系统