- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言图书管理系统45084
《C语言课程设计》报告
题目:选题四 书店存货清单
专业年级:12级电子信息工程二班
学号:120101021128
姓名:钟皇平
指导教师:张翼
同组设计者
2013 年 6 月
[问题定义]
书店通常使用个人电脑设置一个清单来管理书籍的存货情况,该清单记录每本书籍的书名,作者,出版社,在清单中的位置等信息。当顾客想要买某本书时,只要输入书籍的名称和作者,系统就会显示该书籍是否在清单中,如果书籍在清单中,系统会显示书籍的详细信息以及库存数量,如果不在清单中,也会显示相应的提示信息。如果顾客想买的书籍数量在库存的范围内,系统会计算总价格并显示出来,否则,会提示“所需数量不在库存范围内”。
根据以上的分析,编程要求:
用结构体自行定义几本书籍,要求包括书籍名称,作者,出版社,出版日期,价格,在目录中的位置;
当从键盘输入某本书的名称和作者姓名,如果能查询到则显示该书籍的所有信息,并提示“请输入所需数量”,如果所需数量在库存范围内,则显示总价,否则,显示“所需数量不在库存范围内”,接着继续提示顾客是否还想买其他书籍,如果输入“y”或“Y”表示继续输入下一本书的名称和作者姓名,进行下一轮查询;如果不能查询到该书籍,则显示“谢谢,再见!”,依次类推,不断循环。
[开发工具]
Miscroft Visual c++ 6.0
[数据结构]
char sm[100],c;
sm[100]为储存书名的数组
c为是否继续查找书籍的依据,当其为y或Y时,继续查找,否则为退出查找
int i=0,n=0,flag=0,j=0;
i在后面的for语句中计数用
n用以储存所需同种书籍的数量
j用来计数,以其为5时作为提示未找到书籍的依据
struct kc{ {
char sm[100];
char zz[100];
char cbs[100];
long cbrq;
double jg;
int wz;
int sl;}
定义储存书籍资料的结构体数组,依次为书籍名称,作者,出版社,出版日期,价格,在目录中的位置,以每个名词的首字母取成员名,如“书名”为“sm”
[算法描述]
字符串判断函数,用以判断两字符串是否相等
int cmp(char str0[], char str1[]) //比较两字符串是否相等,相等则返回0,否则返回非0
{
int i;
for(i=0;str0[i]!=0 str1[i]!=0 str0[i]==str1[i];i++);
return str0[i]-str1[i];
}
书籍查找与显示书籍资料模块
flag1: printf(请输入书名\n);
fflush(stdin);
gets(sm);
j=0; //未找到书籍而跳到这里时使j清零,防止当再次没找到书籍时因j已大于5而无法进入最后的if语句,即无法得到未查找到的提示
for(i=0;i5;i++)
{
j++; //当j加到5时则说明没有找到书籍
if(cmp(a[i].sm,sm)==0)
{
printf(书名 );
puts(a[i].sm);
printf(作者 );
puts(a[i].zz);
printf(出版社 );
puts(a[i].cbs);
printf(出版日期 %d\n,a[i].cbrq);
printf(价格 %lf\n,a[i].jg);
printf(位置 %d\n,a[i].wz);
printf(库存 %d\n,a[i].sl);
printf(请输入所需数量\n);
fflush(stdin);
scanf(%d,n);
if(n=a[i].sl)
printf(总价为 %lf\n,(n*a[i].jg));
else
printf(所需数量不在库存范围内\n);
继续查找判断模块
printf(是否还想买其他书籍?(是 Y或y 否 双击回车键)\n);
fflush(stdin);
scanf(%c,c);
if(c==y||c==Y)
goto flag1;
else
{
j=0; //当要退出时使j清零,防止当所找书籍位置为5时跳出for语句后因j也为5而误进入下面的if语句
printf(谢谢,再见!\n);
}
}
查找失败提示模块
if(j==5)
{
j=0;
printf(未查找到该书籍,是否还想买其他书籍?(是
您可能关注的文档
最近下载
- 2012、2014-2019年华中科技大学《431金融学综合》历年考研真题汇总(含部分答案).pdf
- 个人信用报告征信简版电子版PDF版2024年2月最新版带水印可编辑.pdf
- 浅析欧莎服装品牌新媒体营销策略.docx
- 中班音乐《小老鼠打电话》PPT课件.pptx
- 中国自然地理:华北地区PPT.pptx
- 《地球脉动3》招商通案.pdf
- 锥坡工程量计算(支持斜交、溜坡计算).xls VIP
- 消防救援作战训练安全1.pptx VIP
- 河北省唐山市路北区2023-2024学年数学三年级第一学期期末质量检测试题含答案.doc
- 21版《思想道德与法治》 第三节:投身崇德向善的道德实践5.3 课件.ppt
文档评论(0)