该设计论文已经通过各大高校老师审核认可并通过答辩,准确完整无误。欢迎大家下载学习交流。如有疑问可随时联系店主,竭诚为您解答!!

应用技术学院

课 程 设 计 报 告

课程名称 C语言课程设计

课题名称 速算24

专 业 电气工程及其自动化

班 级 0783

学 号 200713010311

姓 名 吴汀槐

指导教师 王颖

2008年3月21日

湖南工程学院

课 程 设 计 任 务 书

课程名称 C语言课程设计

课 题 运动会分数统计系统

专业班级 电气工程及其自动化

学生姓名 吴汀槐

学 号 200713010311

指导老师 王 颖

审 批

任务书下达日期:2008 年3月16日

任务完成日期:2008年3月20日

目录

正文4

一、课题的主要功能4

二、课题的设计目的4

三、课题的功能模块的划分:4

四、主要功能的实现7

五、调试分析过程描述:14

附件16

/* 源程序*/16

总结29

参考文献30

应用技术学院课程设计评分表31

正文

一、课题的主要功能

速算24扑克牌是一种扑克牌智力数学游戏,游戏方式简单易学,能健脑益智,是一极为有益的活动不难看出,能极大限度地调动眼、脑、手、口、耳多种感官的协调活动,对于培养我们快捷的心算能力和反应能力很有帮

(4) change()转换函数

将中缀表达式转换为等价的后缀表达式。

1)置初值

2)从左到右扫描中缀表达式,逐步转换成等价的后缀表达式

3)结束处理

(5)computer() 计算函数

计算后缀表达式的值,使用栈扫描表达式,然后将计算结果压入堆栈,直到表达式最后一个运算符号处理完毕,送入栈顶的值才是后缀表达式的值。

(6)堆栈运算

1)栈的初始话initstack(),将栈顶指针置为空,返回栈顶指针

2)入栈运算push(),栈1的类型为整型,栈2为字符型

3)出栈运算pop(),进行指针变动

4)读栈顶元素topx(),栈保持不变

5)ptop()取出栈顶元素,然后删除

6)判断栈是否为空empty()

(7) text()文本输出函数

在图形方式下显示字符串,由调用函数传递,实际再主函数中调用两次,一次是当结果等于 24时显示“very good”,用text(“very good”),一次是结果不等于24时,显示“wrong!!!”信息,用text(“wrong!!!”)。

⑻图形关闭close()

调用图形关闭函数,关闭图形系统。

四、主要功能的实现:

⑴ main()主函数

主函数是程序的入口,采用模块化设计,主函数不宜复杂,功能尽量在各模块中实现。先调用发牌函数,随机生成四张牌,并显示提示输入计算中缀表达式信息,然后调用转换函数,将返回的表达式字符串作为参数调用计算函数,计算结果,然后对结果进行处理,显示结果后按任意键,询问是否继续,如果输入字符则结束程序,否则重新发牌运算.其程序流程图如下:

(2)、 change()转换函数

为了将中缀表达式转换成等价的后缀表达式,需要从左到右扫描中缀表达式,并使用栈2来存放表达式中的开括号“(”和暂时不能确定计算次序的运算符号。中缀表达式是字符串e,后缀表达式是字符串a,由于按字符串格式读入字符串,实际是最后一个字符’\0’结尾符号的字符数组,这样处理是按照字符数组的处理方法,根据数组元素的下标访问数组元素,w为临时变量,具体算法如下:

(1)置初值 i=0;j=0;分别表示中缀和后缀表达式字符串的下标。

(2)从左向右扫描中缀表达式,逐步转换成等价的后缀表达式。

循环,当时反复执行下列语句:

分以下情况执行:

①当e[i]为数字’0’,’1’…’9’时,执行:

I.当e[i]!=’.’时,反复执行

a[j]=e[i]; /*将数字原样拷贝到数组a中*/

j++; /*e数组的下标加1*/

j++; /* a数组的下标加1*/

II a[j]=’.’; j++;

②当e[i]==’(’时,执行:

将e[i]压入堆栈

③当e[i]==’)’时,执行:

I取出栈顶元素存入w

II循环当w!=’(’时反复执行:

a[j]=w; /*将栈顶元素w存入a数组

速算C语言程序设计,C语言程序设计课程设计-速算24.doc相关推荐

  1. led c语言程序结设计,《C语言程序设计》学习领域课程标准-LED照明工程设计.doc...

    <C语言程序设计>学习领域课程标准-LED照明工程设计.doc <C语言程序设计>课程标准 课程类别 专业核心课程 开课部门 电子信息工程系 总学时 64 学时 学分 4学分 ...

  2. “程序设计与算法训练”课程设计“二值图像数字水印技术的实践”

    数据结果课程设计(题目抄袭自某牛逼985高校). github项目地址(含报告等) 课程编号:0521733B                                              ...

  3. c语言上机指导答案清华,第一章自测练习答案清华大学c语言习题实验指导及课程设计...

    第一章自测练习答案清华大学c语言习题实验指导及课程设计 第一章 自测练习参考答案 一.简答题 1.源程序是程序员创建的,目标程序是编译器创建的,可执行程序是连接器创建的. 2.步骤如下:1)说明程序需 ...

  4. c语言课设宿舍管理程序,C语言程序课程设计宿舍管理软件.doc

    C语言程序课程设计宿舍管理软件.doc 课程设计(论文) 题 目 名 称 宿舍管理软件 课 程 名 称 C语言程序课程设计 学 生 姓 名 学 号 系 .专 业 信息工程系.信息大类 指 导 教 师 ...

  5. c语言经典案例 俄罗斯方块,C语言实现俄罗斯方块经典游戏课程设计

    C语言实现俄罗斯方块经典游戏课程设计 计算机实习报告 一.功能说明 1.1总体功能说明 本工程用C++语言实现了俄罗斯方块经典游戏. 俄罗斯方块游戏特点:俄罗斯方块的基本规则是通过键盘控制移动.旋转和 ...

  6. 通讯录管理系统C语言课程设计大作业,c语言课程设计报告---通讯录管理系统.doc...

    c语言课程设计报告---通讯录管理系统.doc Yangtze University College of Arts and Science 学生实习手册 (课程设计报告) 学 部 理 工 学 部 专 ...

  7. 员工信息管理系统语言论文c,C语言课程设计 职工信息管理系统.doc

    C语言课程设计 职工信息管理系统.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. ...

  8. 职工工资程序c语言doc,C语言程序课程设计---职工工资单系统.doc

    C语言程序课程设计---职工工资单系统.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水 ...

  9. c 数据库mysql课程设计_C语言连接MySQL数据库(课程设计总结)

    刚结束课程设计,也预示着假期马上就要到来了.本次课程设计并不算难,无非就是让做一个XXX系统,实现用户的注册.登录.菜单管理.超级用户等等一些功能,到现在为止已经做过好几个了,所以基本流程都熟悉了!我 ...

  10. c语言学生成员管理代码报告怎么写,C语言学生通信录管理系统课程设计报告

    <C语言学生通信录管理系统课程设计报告>由会员分享,可在线阅读,更多相关<C语言学生通信录管理系统课程设计报告(18页珍藏版)>请在人人文库网上搜索. 1.实验名称 :学生通信 ...

最新文章

  1. 克里斯坦森的破坏性创新—《可以量化的管理学》
  2. 数据结构2:中序线索化二叉树为什么要通过pre设置后继结点
  3. AngularJS例子 ng-repeat遍历输出 通过js的splice方法删除当前行
  4. JQuery绑定及效果
  5. 生理性玻璃体混浊的分类与预防控制
  6. mysql安装主从配置_MySQL安装与主从配置
  7. 如何解决空虚感?(转)
  8. POJ 2449 Remmarguts' Date (SPFA + A星算法) - from lanshui_Yang
  9. mysql如何创建全文索引_从零开始学习MySQL全文索引
  10. Matlab绘图模板
  11. 入侵WIN2003 PHP服务器的另类技术
  12. 形如in (‘111,222,333‘) 的 ,Oracle的in函数(报错:无效数字)
  13. 我的百度十年 | 云原生时代架构师的十大核心能力(上)
  14. Angular sort descending
  15. JavaScript---网络编程(8)-DHTML技术演示(1)
  16. 1.0数据采集与预处理概述
  17. 在Android上修改读取IMEI码的方法
  18. 华为服务器图片无法显示,服务器的图片无法显示
  19. 如何利用eclipse的WTD自动部署一个webservice
  20. JavaScript 简介 JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

热门文章

  1. 哪些操作会造成raid数据无法恢复?raid多块硬盘离线后切记不要做这些事情
  2. 2416开发板上网卡芯片lan9220的时序配置问题
  3. “==”和equals方法的区别
  4. 基于Python的BPSK音频的波形和频谱
  5. jsp的内置对象Exception
  6. Spark的RDD依赖关系
  7. 20080330 - strong-typing and weak-typing
  8. String字符串类的获取功能
  9. Unknown lifecycle phase mvn
  10. Elasticsearch入门和基本使用