c语言课程设计书店存货清单含源代码运行截图.docx
- 文档编号:2311102
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:21
- 大小:83.60KB
c语言课程设计书店存货清单含源代码运行截图.docx
《c语言课程设计书店存货清单含源代码运行截图.docx》由会员分享,可在线阅读,更多相关《c语言课程设计书店存货清单含源代码运行截图.docx(21页珍藏版)》请在冰豆网上搜索。
c语言课程设计书店存货清单含源代码运行截图
《C语言课程设计》
实验课题:
书店存货清单
学院:
专业班级:
学号姓名:
一.使用的子函数
voidwelcome();//欢迎界面
voidfunction();//主功能主界面
voidsubfunction(int);//次功能提示界面
voidread();//读取文件到内存
voidadd();//创建以及添加
voidbuy();//查询购买功能的实现
voidsave();//文件的存储
voidlogin();//登陆
二、编写思路
1.定义结构体
structinformation//书店存货结构体
{
chartitle[100];//书名
charauthor[100];//作者
charpress[100];//出版社
floatdate;//出版日期
doubleprice;//价格
intcount;//当前图书数量
intposition;//在清单中的位置
}lists[N];
2.欢迎函数
voidwelcome()//欢迎界面
{
printf("********************************************************************************\n");
printf("★---您好,欢迎使用书店存货清单系统!
---★\n\n");
printf("books.txt正在导入中...请您稍等...\n\n");
read();//读取
}
3.主功能函数
voidfunction()//主功能主界面
{
printf("********************************************************************************\n");
printf("--------☆请选择功能☆--------\n\n"
"--------☆1.录入书籍☆--------\n\n"
"--------☆2.购买书籍☆--------\n\n"
"--------☆3.存储书籍☆--------\n\n"
"--------☆0.退出程序☆--------\n\n");
printf("********************************************************************************\n\n");
intc;
scanf("%d",&c);
switch(c)
{
case1:
add();break;
case2:
buy();break;
case3:
save();break;
case0:
exit(0);break;
default:
printf("输入错误!
正在返回...\n");function();break;
}
}
4.次功能函数
voidsubfunction(intk)//次功能提示界面
{
printf("********************************************************************************\n");
printf("--------☆请选择功能☆--------\n\n"
"--------☆1.返回上级☆--------\n\n"
"--------☆2.录入书籍☆--------\n\n"
"--------☆3.购买书籍☆--------\n\n"
"--------☆4.存储书籍☆--------\n\n"
"--------☆0.退出程序☆--------\n\n");
printf("********************************************************************************\n\n");
intc;
scanf("%d",&c);
switch(c)//次功能选择的实现
{
case1:
function();break;
case2:
add();break;
case3:
buy();break;
case4:
save();break;
case0:
exit(0);break;
default:
printf("输入错误!
正在返回...\n");subfunction(k);break;
}
}
5.读取函数
voidread()//读取文件到内存
{
FILE*fp;
fp=fopen("books.txt","r");//文件是否正常打开
if(fp==NULL){
printf("对不起,文件不存在!
\n\n");
printf("********************************************************************************\n");
exit(0);
}//从文件读取到内存
for(;i if(feof(fp))break; fscanf(fp,"%s",lists[i].title); fscanf(fp,"%s",lists[i].author); fscanf(fp,"%s",lists[i].press); fscanf(fp,"%f",lists[i].date); fscanf(fp,"%lf",lists[i].price); fscanf(fp,"%d",lists[i].count); fscanf(fp,"%d",lists[i].position); } i--; fclose(fp); } 6.添加函数 voidadd()//创建以及添加 { printf("请输入书名: \n"); scanf("%s",lists[i].title); printf("请输入作者: \n"); scanf("%s",lists[i].author); printf("请输入出版社: \n"); scanf("%s",lists[i].press); printf("请输入出版日期: \n"); scanf("%f",&lists[i].date); printf("请输入价格: \n"); scanf("%lf",&lists[i].price); printf("请输入数量: \n"); scanf("%d",&lists[i].count); printf("请输入序号: \n"); scanf("%d",&lists[i].position); i++;//全局变量的自增 function(); } 7.查询购买函数 voidbuy()//查询购买功能的实现 { printf("请输入书名: \n");//输入书名搜索 charstr[50],c; intn; scanf("%s",str); intk; for(k=0;k<=i;k++) if(! strcmp(lists[k].title,str)) { printf("书名: "); printf("%s",lists[k].title); printf("\n"); printf("作者: "); printf("%s",lists[k].author); printf("\n"); printf("出版社: "); printf("%s",lists[k].press); printf("\n"); printf("出版日期: "); printf("%.2f",lists[k].date); printf("\n"); printf("价格: "); printf("%.2lf",lists[k].price); printf("\n"); printf("数量: "); printf("%d",lists[k].count); printf("\n"); printf("序号: "); printf("%d",lists[k].position); printf("\n"); printf("请输入所需数量: "); fflush(stdin); scanf("%d",&n); if(n<=lists[k].count) { printf("总价为: %.2lf\n",n*lists[k].price); } else printf("所需数量不在库存范围内\n"); printf("是否还想买其他书籍? (Y/N)\n"); fflush(stdin); scanf("%c",&c); if(c=='y'||c=='Y') buy(); else break; } if(lists[k].title[0]=='\0') printf("您查找的信息不存在或已删除,请重新查找\n"); subfunction(k); } 8.存储函数 voidsave()//文件的存储 { FILE*fp; fp=fopen("books.txt","w+"); intj; for(j=0;j { fprintf(fp,"%s",lists[j].title); fprintf(fp,"\n"); fprintf(fp,"%s",lists[j].author); fprintf(fp,"\n"); fprintf(fp,"%s",lists[j].press); fprintf(fp,"\n"); fprintf(fp,"%.2f",lists[j].date); fprintf(fp,"\n"); fprintf(fp,"%.2lf",lists[j].price); fprintf(fp,"\n"); fprintf(fp,"%d",lists[j].count); fprintf(fp,"\n"); fprintf(fp,"%d",lists[j].position); fprintf(fp,"\n"); } fclose(fp); printf("文件已存储! \n"); } 9.登陆函数 voidlogin()//登陆 { charname[10]; charcode[10]; charname1[10]="sdchqd"; charcode1[10]="666666"; intj=0,d=0; charc; printf("********************************************************************************\n"); printf("\t\t\t\t书店存货清单系统\n"); printf("\t\t\t\t请您登录\n"); while(j<3) { printf("\t\t\t\t请输入用户名: \n\t\t\t\t"); inta,b; for(a=0;(c=getchar())! ='\n';a++) name[a]=c; name[a]='\0'; printf("\t\t\t\t请输入密码: \n\t\t\t\t"); for(b=0;(c=getchar())! ='\n';b++) code[b]=c; code[b]='\0'; if(! strcmp(name,name1)==0||! s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 书店 存货 清单 源代码 运行 截图
![提示](https://static.bdocx.com/images/bang_tan.gif)