数据结构课程设计报告---利用栈求表达式的值.docx

数据结构课程设计报告---利用栈求表达式的值.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计报告题目:利用栈求表达式的值学院:信息工程学院专业:计算机科学与技术指导老师:******姓名:********学 号: *********2011-6-27目录1.摘要………………………………………………………………………12.设计方案…………………………………………………………………012.1整体设计方案………………………………………………………012.1.1创建试题库模块设计方案……………………………………022.1.2试题测试模块设计方案………………………………………032.1.3查看历史分数模块设计方案…………………………………062.1.4随时退出模块设计方案………………………………………072.1.5主程序设计方案………………………………………………073.本程序涉及的结构体………………………………………………………084.程序演示………………………………………………………………………095.课程设计心得………………………………………………………………141.摘要设计一个用于小学生使用的数学表达式求值的系统。在系统中,充分利用数据结构中栈的知识,并用到了C语言中的文件操作,主要是:如何从试题库中读取题目以及将试题写入试题库中。完成了试题库的录入更新,考试,打分,评价和与历史分数的对比评价等功能。在系统中,充分体现了数据结构这门学科的特色。其中涉及到的文件主要有:shitiku.txt——用来存放试题;markrec.txt——存放历史分数;n_rec.txt存放测试次数。2设计方案2.1整体设计方案此课题是研究表达式求值的问题,以帮助小学生完成测试。为了达到这个功能,实际我们要做的就是出题,和计算分数给出评价的工作。整体设计都是以这个要求为轴心进行的。为了直观和方便,现画出软件整体设计模块图。如下图:2.1.1创建试题库模块设计方案首先在主函数中调用创建试题库函数,将试题存入到试题库文件shitiku.txt中,然后将该调用从主函数中删除。创建试题库函数:创建指向xuanti类型的指针,利用循环将输入的测试题该指针的xuanti单元中,最后将该指针中的测试题写入试题库文件shitiku.txt中。在创建试题库这个模块中,还包含了两个文件操作的函数的调用,分别是将试题信息写入shujuku.txt中的函数void WriteToFile(xuanti *pstu,intnum)与讲试题信息从shujuku.txt中读出来的函数void ReadFromFile(xuanti *pstu,intnum)。部分程序如下:void Built_shitiKu() /*建立试题库文件*/{inti,num;xuanti *pstu;printf(请输入试题数目:\n); /*输入试题数目*/scanf(%d,num);fflush(stdin);pstu=(xuanti *)malloc(num*sizeof(xuanti)); /*动态分配内存*/if(pstu==NULL) {printf(没有足够的内存空间!\n); /*没有足够内存空间*/return; } for(i=0;inum;i++) /*输入试题*/ {printf(第 %d 道题目:,i+1);gets(pstu[i].a);fflush(stdin);printf(\n); } void WriteToFile(xuanti *pstu,intnum) /*将pstu所指向的试题息写入文件shitiku.txt中*/{ FILE *fp;fp=fopen(shitiku.txt,at);if(fp==NULL) {printf(不能创建试题库!\n); /*不能创建试题库*/free(pstu);exit(0); }fwrite(pstu,sizeof(xuanti),num,fp);fclose(fp);}void ReadFromFile(xuanti *pstu,intnum) /*从试题库中提取试题*/{ FILE *fp;fp=fopen(shitiku.txt,rt);if(fp==NULL) {printf(不能打开shitiku.txt文件!\n); /*不能打开shitiku.txt文件*/free(pstu);exit(0); }fread(pstu,sizeof(xuanti),num,fp);fclose(fp);}2.1.2试题测试模块设计方案试题计算:建立两个栈,分别存放数字、运算符,建立一个二维数组,存放任

文档评论(0)

li455504605 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档