计算机专业课程设计报告c语言,计算机程序设计(c语言)课程设计报告.doc

计算机程序设计(c语言)

课程设计报告

题目:

学院:

专业:

班级:

姓名:

指导教师:

答辩日期:

一、选题背景:

问题提出:在应用电脑的过程中,往往需要使用计算器,来执行简单的运算,但系统提供的计算功能过于烦琐,而且有些程序并不提供计算功能。

为此,这里用C语言编制了几个函数,用于程序中时,可达到的目的

简单的计算器是对实数进行简单的加,减,乘,除及简单的求幂运算。本程序是通过简单的C语言的运算函数来计算运行,来实现计算器的基本功能。

在实现过程中,应用循环来判断运行相应的函数,即可达到简单的计算器的功能。

三:设计分析:

主要解决问题方法:

通过计算器函数,窗口函数,设计鼠标图形函数及按键函数来构成计算器的实体,需要解决的是定义计算器的外观,及鼠标的图形及其应用,尤其是鼠标置于顶端时,其下一步的循环返回另一个顶端。

技术关键:

计算器函数 computer()的边框,按键大小设计,及鼠标在同一行或列中的循环滚动,还有进行运算时,按键不同,进行响应的运算,窗口函数(mwindow()),设计鼠标函数(arrow()),按键函数(specialkey())。

四:程序流程图

五、程序清单:

一、

二、

#include /*DOS接口函数*/

#include /*数学函数的定义*/

#include /*屏幕操作函数*/

#include /*I/O函数*/

#include /*库函数*/

#include /*变量长度参数表*/

#include /*图形函数*/

#include /*字符串函数*/

#include /*字符操作函数*/

#define UP 0x48 /*光标上移键*/

#define DOWN 0x50 /*光标下移键*/

#define LEFT 0x4b /*光标左移键*/

#define RIGHT 0x4d /*光标右移键*/

#define ENTER 0x0d /*回车键*/

void *rar; /*全局变量,保存光标图象*/

struct palettetype palette; /*使用调色板信息*/

int GraphDriver; /* 图形设备驱动*/

int GraphMode; /* 图形模式值*/

int ErrorCode; /* 错误代码*/

int MaxColors; /* 可用颜色的最大数值*/

int MaxX, MaxY; /* 屏幕的最大分辨率*/

double AspectRatio; /* 屏幕的像素比*/

void drawboder(void); /*画边框函数*/

void initialize(void); /*初始化函数*/

void computer(void); /*计算器计算函数*/

void changetextstyle(int f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机程序设计(C语言) 课程设计报告 题目:电子动画时钟 学院: 机电工程学院 专业: 班级:090109班 学号: : 指导教师: 设计日期: 一、概述 选题背景 :随着社会的进步和科技的发展,电子钟表逐渐成为了人们生活中不可缺少的一部分。 设计思路:(一)功能模块设计,1.电子时钟执行主流程2.电子时钟界面显示3.电子时 钟按键控制模块4.时钟动画处理模块(二)数据结构设计1.time结构体2.全局变量(三 )函数功能描述1.keyhandle()2.timeupchange()3.timedownchange()4.digitclock()5 .drawcursor()6.clearcursor()7.void clockhandle()8.main()(四)程序实现(五)运行结果。 二、概要设计 2.1、数据结构 此程序中,使用了C语言的time结构体和几个全局变量,1.time结构体 struct time { unsigned char ti_min; /*分钟*/ unsigned char ti_hour; /*小时*/ unsigned char ti_hund; /*百分之一秒*/ unsigned char ti_sec; /*秒*/ }; time结构体定义在dos.h文件中,可用来保存系统的当前时间,其中各字段的值的含 义如下。 1.unsigned char ti_min:保存分钟值。 2.unsigned char ti_hour:保存小时。 3.unsigned char ti_hund:保存百分之一秒,例如,ti_hund=500,表示1/500秒。 4.unsigned char ti_sec:保存秒数。 2.2、全局变量 下面对程序用到的全局变量及数组进行说明. 1. double h,m,s: 此3个全局变量分别用来保存小时,分钟,秒数。 2. double x,x1,x2,y,y1,y2:保存数字时钟中小时,分,秒在屏幕中显示的坐标值。 3.struct time t[1]:定义一个time结构类型的数组,此数组只有t[0]一个元素。 2.3 模块列表 1.时钟动画处理模块 时钟动画处理模块主要由clockhandle()函数来实现,程序中旧时钟指针的擦除是借 助setwritemode(mode)函数设置画线的方式来实现。如果mode=1,则表示画线时用现在 特性的线所画之处原有的线性异或(XOR)操作,实际上画出的线是原有线与现在规定的 线进行异或后的结果。因此,当线的特性不变时,进行两次画线操作相当于没有画线, 即在当前位置处清除了原来的画线。 2.时钟按键控制模块 在电子时钟中,按键控制模块最主要的工作就是必须能读取用户按键,对按键值进行 判断,并调用相应函数来执行相关操作。 3. 数字时钟处理模块 (1)调用digitclock(int x,int y,int clock)函数。在数字时钟r指定位置显示时,分,秒,其中digithour(double h),int digitour(double h)和digitsec(doubles)用于完成数值的double型向int型转换。 (2)调用drawcursor(int count),clearcursor(int count)函数来完成旧光标的擦除和新光标的绘制。 2.4、程序结构图(也就是模块之间的关系) 三 、详细设计 3.1程序预处理模块。包括加载头文件,定义常量,变量,结构体数组和函数原型声明。 3.2主控模块main().main()函数主要实现了对电子时钟的初始化工作,及clockhandle( )函数的调用。 3.3时钟动画处理模块。 3.4时针按键控制模块。在电子时钟中,按键控制模块最主要的工作就是必须能读取用户 按键,对按键值进行判断,并调用相应函数来执行相关操作。流程图如下。 3.5数字时针处理模块。在数字时钟处理模块中,主要实现数字时钟的显示和数字的时钟 修改。其中,在数字时钟的修改中,用户可以按Tab键定位需要修改的内容的位置,然后 通过按光标上移或下移键来修改时间。 四、调试程序 错误1: 错误现象:Declaration syntan error 错误原因:声明错误,缺分号。 修改方法:在声明语句后添加分号。 错误2: 错误现象:Two few parameters in call to 'setlinestyle' in function main 错误原因:语句缺少参数。 修改方法:在main()函数中找到缺少参数的语句添加相应的参数。 错误3: 错误原因:Function call missing)in function clockhandle 错误原因:在clockhandle函数调用的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值