实验报告统一书写格式

2019-01-19 19:26

综合实验报告

( 2008-- 2009年度第1学期)

实验名称: C语言课程设计 题 目: 一个简单计算器 院 系:计算机科学与技术系 班 级: 计算0802班 组长学号: 组长姓名: 成员学号: 成员姓名: 指导教师: 郑玲 设计周数: 2 周 成 绩:

日期:2009年1月 日

C语言课程设计报告

题目名称:一个简单计算器

小组组长姓名 (学号): 组员姓名(学号): 组员姓名(学号): 一、课程设计目的:

1.进一步掌握和利用C语言进行行程设计的能力; 2.进一步理解和运用结构化程序设计的思想和方法; 3.初步掌握开发一个小型实用系统的基本方法; 4.学会调试一个较长程序的基本方法; 5.学会利用流程图表示算法;

6.掌握书写程序设计开发文档的能力(书写课程设计报告)。

二、题目描述

计算器是日常生活中的一种常用计算工具,能够进行加、减、乘、除四则运算,高级的计算器还具有函数计算及统计功能等。

三、功能分析

简单计算器能做加(+)、减(-)、乘(*)、除(/),四则运算和求百分运算(%);通过鼠标输入一个数,单击S按钮还可计算该数的平方根。

简单计算器具有以下主要功能: 1.加减乘除四则运算

例如,先后单击“1”、“+”、“2”、“=”按钮,应能进行1+2=3的计算。并且支持表达式的优先级计算处理。

2.求平方根运算 .

先后单击“9”、“S”按钮,应得到9的平方根是3并显示在输出显示框中。本计算器还可计算1+sqrt(9)的值,并得到正确的结果是4。

简单计算器不支持键盘操作,只有一个求数的平方根的函数计算功能,没有提供类似Windows计算器的菜单功能。

四、系统设计

1.程序总体结构

简单计算器的处理过程是:首先进行图形和鼠标初始化,接着显示简单计算器外观,并接受用户的

1

C语言课程设计报告

鼠标控制使用。如果单击了鼠标右键,则程序关闭图形方式并结束运行。其主流程如图2所示。

图形初始化 鼠标初始化 输出计算器外观 鼠标控制计算器的使用 结 束 图2简单计算器的流程图

2.界面设计

简单计算器的界面如图3所示,具体设计如下:

(1)计算器背景采用浅蓝色,然后用灰色作底色和红色作前景色。

(2)第1行是数据输入和结果输出的信息显示框,使用bar函数,用黄色填充。

(3)信息显示框下面是4排按钮,每排5个,同样使用bar函数。按钮被设计成有按下和弹起两种状态,初始是弹起状态。

(4)在每个按钮框上输出相应的数字或符号作为按钮的标签。 (5)最后在简单计算器下方输出使用说明和设计单位信息。

图3简单计算期的外观

3.重要数据的数据结构设计

2

C语言课程设计报告

简单计算器没有用到复杂的数据结构,计算时定义了两个double变量u、v和一个字符数组s及几个标志变量。开始使用时u和v变量分别存储第1次和第2次输入的数据,计算结果始终保存在u中。继续运算时,输入的数据存于v,并与u中的数据运算后结果保存于u中。

在简单计算器进行加减乘除运算的函数compute()中,定义以下主要标志变量:

(1)sign:表示“+”、“—”、“*”、“/’等运算符的整数变量。值为0表示当前未单击过运算符。 (2)flag:输人数据时是否单击了小数点。单击了小数点,flag为1,否则为0。 4.函数清单

简单计算器程序采用了结构化程序设计的思想,由1个.h文件和4个.c文件组成,并构造了TC工程文件来管理和生成简单计算器应用。每个源文件包含多个函数的设计,这些函数的功能设计及处理描述见表1。

文件名 函数原型 函数功能 处理描述 ①调用0x33中断的0号功能。 ②寄存器ax返回值不是-1,表明鼠标初始化失败。 ①调用0x33中断的3号功能。 ②鼠标位置存于寄存器cx和dx中,然后存于x、y指针变量指向的单元返回调用函数。 ①调用0x33中断的3号功能。 ②鼠标状态存于寄存器bx,其第0位是1表明左键被按下。 ①调用0x33中断的3号功能。 ②鼠标状态存于寄存器bx,其第1位是1表明右键被按下。 void initmouse() 鼠标初始化 Void get_mouse_position 获取鼠标位置(int *x,int *y) mouse.C int leftpress() 判断鼠标左键是否单击 坐标 int rightpress() 判断鼠标右键是否单击 ①使用图形函数绘制计算器外框。 ②调用公用函数bottonup()绘制弹起效果的按钮。 picture.C void picture() 绘制计算器界面 ③调用系统outtextxy()输出按钮标签。 ④调用系统outtextxy()输出使用说明等信息注: 函数开始绘制鼠标图标并保存在全局变量imagep中,在compute()函数(见compute.c文件)中涉及显示、移动鼠标等操作。 ①调用系统函数initgraph()进行初始化。 void GraphInit() util.C void bottondown (int x,int y) 画按下效果 的按钮框 ①调用画线及颜色设置函数绘制按下效果的按钮框。 ②(x,y)表示按钮框的左上角坐标 3

图形初始化 ②失败则程序结束运行。 C语言课程设计报告

void bottonup (int x,int y) 画弹起效果的按钮框 ① 调用画线及颜色设置函数绘制弹起效果的按钮框 ② (x,y)表示按钮框的左上角坐标。 void show(int x,int y) 单击按钮的 效果显示 ①显示按下的按钮。 ②延时。 ③显示弹起的按钮注:模拟按钮被单击。 ①每个按钮的位置是确定的(即矩形框的左上角坐char getnumber (int x,int y) 获取单击按钮图标 标和大小已知)。 ②根据单击按钮时鼠标的(x,y)可确定单击了哪个按钮,函数返回按钮的标签例: 左上角坐标为(150,105)和右下角为(200,135)的矩形框表示计算器上数字“7”按钮。

五、源程序

整个计算器应用程序由6个源文件组成,分别是compute.prj、compute.h、mouse.c、picture.c、util.c和compute.c。

1.compute.prj文件

简单计算器程序的TC工程文件,内容如下: mouse.C (compute.h) picture.C (compute.h) util.c (compute.h) compute.c (compute.h) 2.compute.h文件

由简单计算器程序设计中所涉及的系统头文件、宏定义、外部全局变量申明和函数原型说明等组成,使构成简单计算器的各个C源程序文件只需引用该头文件即可。

#include /*系统提供的头文件*/ #include #include #include #include ’ #include 源程序见附录一。

4

C语言课程设计报告

六、测试

1.界面及按钮单击测试

检查界面布局是否合理、正确,单击按钮是否有按下再弹起效果,单击按钮的输入是否正确。 2.简单计算器的功能测试

(1)加、减、乘、除四则运算的测试。 (2)优先级处理的测试

先后单击“1”、“+”、“2”、“*”、“4”、“=”按钮,输出结果是9,即支持四则运算的优先级处理。 (3)求平方根运算的测试 a)计算sqrt(9)

先单击“9”、再单击“S”按钮,看结果是否正确。 b)计算1十sqrt(9) 检查是否能正确1+sqrt(9)。

通过以上测试可以基本确定计算器程序是否实现了预定的功能。 3.正/负(+/-)运算处理的测试

输入123后,然后单击“+/-”号,经测试程序显示-123是正确的,再单击“+/-”程序再显示123,也是正确的。

七、参考文献

[1] 何钦铭, 颜晖《C语言程序设计》,高等教育出版社. [2] 何钦铭,陈根才《C语言程序设计课程设计》,浙江大学出版社 附录(设计流程图、程序、测试数据等) 1、 设计流程图 2、 程序 3、 测试数据

5


实验报告统一书写格式.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高中语文《给我的孩子们》教案11 北师大版必修2 精品

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: