资源简介

花草信息管理系统

资源截图

代码片段和文件信息

#include //定义输入/输出函数
#include//定义杂项函数及内存分配函数
#include//字符串处理
#include// 通用输入输出库
typedef struct flower //定义结构体
{
char num[10]; //编号
char name[15]; //名称
float price; //售价
int count; //库存
char mean[23]; //花语
}flower;
flower blossom[100];//struct
char filename[20]; //全局
void logon(); //登陆函数
int menu_filename();
int menu_select(); //菜单
void add(); //增加
void query(); //查询
void amend(); //修改
void delet(); //删除
void scan(); //浏览
void date1();//排序 
int main()
{
system(“color 8f“);//背景颜色
{int n=0;
logon();
menu_filename();} //引用全局变量文件名
for(;;) //循环使用主界面直到遇到结束命令
{
switch(menu_select()) //函数的调用//
{
case 1:printf(“\t\t花草记录添加\n“);add();break;
case 2:printf(“\t\t花草信息浏览\n“);scan();break;
case 3:printf(“\t\t花草信息查询\n“);query();break;
case 4:printf(“\t\t花草数据计算\n“);date1();break;
case 5:printf(“\t\t花草数据修改\n“);amend();break;
case 6:printf(“\t\t花草数据删除n“);delet();break;
case 0:printf(“\n\t\t谢谢使用,再见!\n“);
system(“pause“);//用于看运行结果,避免程序一闪而过
exit(0);
}
}
system(“pause“);
}
void logon()//登陆
{
printf(“\t\t\n\n\n“);
printf(“\t\t水陆草木之花,可爱者甚蕃 ----宋·周敦颐《爱莲说》\n\n\n“);
system(“pause“);
}
int menu_filename()
{
system(“cls“);
printf(“请输入任意数字进入菜单“);
scanf(“\t%s“filename);
return 0;
}
int menu_select() //菜单选择系统函数
{
char c;
do{
system(“cls“);
printf(“\t\t\t\t    ┌ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┐\n“);
printf(“\t\t\t\t    |☆ 花草信息管理系统 ☆│\n“);
printf(“\t\t\t\t    └ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┘\n“);
printf(“\t\t\t\t ┏ ━ ┳ ━ ┳ ━ ┳ ━ ┳ ━ ┳ ━ ┳ ━ ┳┓\n“);
printf(“\t\t\t\t ┃ 1. ◎添加记录 2. ◎显示记录┃\n“);
printf(“\t\t\t\t ┃                            ┃\n“);
printf(“\t\t\t\t ┃ 3. ◎信息查询 4. ◎数据计算┃\n“);
printf(“\t\t\t\t ┃                            ┃ \n“);
printf(“\t\t\t\t ┃ 5. ◎修改记录 6. ◎删除记录┃\n“);
printf(“\t\t\t\t ┃                            ┃\n“);
printf(“\t\t\t\t ┃ 0. ◎退出程序              ┃\n“);
printf(“\t\t\t\t ┗ ━ ┻ ━ ┻ ━ ┻ ━ ┻ ━ ┻ ━ ┻ ━ ┻┛\n“);
printf(“\t\t请您选择(0-6):“);
c=getchar();//从键盘中读取一个字符 
}while(c<‘0‘||c>‘6‘);
return (c-‘0‘); //字符减去‘0‘得到的是数字整型//
}
void add() //花草的录入与添加函数
{
FILE *fp;
int i=0n=0;
char sign=‘y‘; //首先定义sing=‘y‘
system(“cls“); //清屏函数系统中调用
while(sign!=‘n‘&&sign!=‘N‘) //其实只有当输入N或n时才跳出循环
{
printf(“ ----花草纪录添加----\n“);
printf(“编号:\n“);
scanf(“\t%s“&blossom[i].num);
printf(“名称:\n“);
scanf(“\t%s“&blossom[i].name);
printf(“售价:\n“);
scanf(“\t%f“&blossom[i].price);
printf(“库存:\n“);
scanf(“\t%d“&blossom[i].count);
printf(“花语:\n“);
scanf(“\t%s“&blossom[i].mean); //question!
printf(“是否继续添加?(y/n)“);
scanf(“\t%c“&sign);i++;n=n+1;
system( “cls “);
}system(“pause“); //等待命令
if((fp=fopen(“filename““a“))==NULL) //以2进制形式进行文件尾追加//
{
printf(“cannot open the files\n“);
system(“pause“);
return; //如果文件出现错误就返回 exit()
}
for(i=0;iif(fwrite(&blossom[i]sizeof(blossom)1fp)!=1) //以2进制形式写入文件中//一次写入一个结构体//
printf(“file write error\n“);
fclose(fp); //关闭文件
system(“pasue“);
}
void scan() //显示记录进行全面信息浏览
{
void amend(); //声明修改函数//
char sign=‘y‘;
FILE *fp;
i

评论

共有 条评论