#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 font, int direction, int charsize); /*改变文本样式函数*/

void mwindow(char *header); /*窗口函数*/

int specialkey(void) ; /*获取特殊键函数*/

int arrow(); /*设置箭头光标函数*/

/*主函数*/

int main()

{

initialize();/* 设置系统进入图形模式 */

computer(); /*运行计算器 */

closegraph();/*系统关闭图形模式返回文本模式*/

return(0); /*结束程序*/

}

/* 设置系统进入图形模式 */

void initialize(void)

{

int xasp, yasp; /* 用于读x和y方向纵横比*/

GraphDriver = DETECT; /* 自动检测显示器*/

initgraph( &GraphDriver, &GraphMode, "" );

/*初始化图形系统*/

ErrorCode = graphresult(); /*读初始化结果*/

if( ErrorCode != grOk ) /*如果初始化时出现错误*/

{

printf("Graphics System Error: %s\n",

grapherrormsg( ErrorCode ) ); /*显示错误代码*/

exit( 1 ); /*退出*/

}

getpalette( &palette ); /* 读面板信息*/

MaxColors = getmaxcolor() + 1; /* 读取颜色的最大值*/

MaxX = getmaxx(); /* 读屏幕尺寸 */

MaxY = getmaxy(); /* 读屏幕尺寸 */

getaspectratio( &xasp, &yasp ); /* 拷贝纵横比到变量中*/

AspectRatio = (double)xasp/(double)yasp;/* 计算纵横比值*/

}

/*计算器函数*/

void computer(void)

{

struct viewporttype vp; /*定义视口类型变量*/

int color, height, width;

int x, y,x0,y0, i, j,v,m,n,act,flag=1;

float num1=0,num2=0,result; /*操作数和计算结果变量*/

char cnum[5],str2[20]={""},c,temp[20]={""};

char str1[]="1230.456+-789*/Qc=^%";/* 定义字符串在按钮图形上显示的符号 */

mwindow( "Calculator" ); /* 显示主窗口 */

color = 7; /*设置灰颜色值*/

getviewsettings( &vp );

计算器c语言源代码全,C语言的计算器源代码相关推荐

  1. 我的全栈之路-C语言基础之C语言概述与开发环境搭建

    我的全栈之路-C语言基础之C语言概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2.2 计算机软 ...

  2. WoShop跨境电商USDT支付语言插件全开源无加密商城源码

    WoShop跨境电商USDT支付语言插件全开源无加密商城源码 基于现场直播+购物模式,用户可以"边看边买"现场直播商城平台,全终端支持,统一管理后台,传播更强,管理更方便,支持私有 ...

  3. C语言写的一个简单的计算器

    大学的第一学期就这样结束了.前阵子临近放假,不知道该干嘛,就分别用java和C语言写了两个东西.java写了个文件查找的程序.C语言写了个简易的计算器.至于为什么写计算器~因为刚学C语言的时候,还没摸 ...

  4. 基于C99规范,最全C语言预处理知识总结

    基于C99规范,最全C语言预处理知识总结 00. 前言 1. 语法形式 2. 描述 3. 约束 4. 语义 01. 条件包含 01.1 关于`defined` 01.2 关于`#if/#elif/#e ...

  5. 史上最全C语言学习笔记

    最全C语言学习笔记 学习目标 学习编程最主要目标 分析问题的能力.构造算法的能力.编程的能力. 调试程序的能力. 学习方法手段 如何操作? 解题思路:重点要放在解题的思路上 一开始就要学会看懂程序,编 ...

  6. mysql的dml全,MySQL数据管理----DML语言(全记住)(示例代码)

    DML语言(全记住) 数据库意义:数据存储.数据管理 DML语言:数据操作语言 Insert update delete truncate 1.insert 添加 错误示例: -- 1.指定1个字段, ...

  7. c语言商店自动销售,c语言商店商品管理系统设计报告与源代码.doc

    c语言商店商品管理系统设计报告与源代码.doc 1目录1系统分析21.1课程设计内容21.2系统功能需求分析21.3数据结构设计32系统设计32.1总体设计32.2详细设计42.2.1界面设计42.2 ...

  8. centos 自动补全c语言,YouCompleteMe自动补全C语言大型项目 ycm

    YouCompleteMe自动补全C语言大型项目 我的ycm在vimrc中的配置" YouCompleteMe相关配置 let g:ycm_server_python_interpreter ...

  9. C语言1013山东理工大学试题,山东理工大学史上最全C语言PPTC程序设计(2基本数据与运算).ppt...

    山东理工大学史上最全C语言PPTC程序设计(2基本数据与运算) 格式输入函数 * 格式: scanf("格式控制串",地址表) 功能:按指定格式从键盘读入数据,存入地址表指定的 存 ...

  10. c语言读取无压缩的cbl的源代码,c语言基础算法案例

    很适合刚开始学C语言的同学. 1.C语言打印一条语句 源代码: /* C Program to print a sentence. */ #include int main() { printf(&q ...

最新文章

  1. 关于java中的字符流的一个使用例子
  2. mybatis中传入String类型参数异常
  3. 什么是Linux的原生GUI API?
  4. 石墨烯区块链(3)软件升级
  5. boost::callable_traits的is_rvalue_reference_member的测试程序
  6. Android TimeAnimator
  7. Docker应用的四个关键设计因素
  8. python爬取学籍_仝卓学籍造假微博道歉,用Python抓取微博的评论看看群众都说什么...
  9. Away3d学习笔记(1)
  10. python进度条先慢后快_tqdm学习-一个快速,可扩展的Python和CLI进度条
  11. 怎么清除远程计算机的用户名,Windows8系统如何清除“远程桌面连接”登录历史痕迹...
  12. 60分钟企业经营战略
  13. 龙芯电脑安装debian 10 buster
  14. 2020.09.19【普及组】模拟赛C组总结
  15. 百度地图开发-在百度地图上面显示出运动的轨迹
  16. MATLAB学习笔记2:MATLAB基础知识(下)
  17. 水牛城大学本科的计算机专业,PGA学生系列访谈(三):毕业生访谈之我在水牛城的大学时光...
  18. 认识(大端--小端)端模式
  19. 关于用c++写心理测试是有分支就行的事(这次是哈利波特分院帽)
  20. android开发可用技巧

热门文章

  1. 添加本地cdrom到RHEL yum 源
  2. ARM926EJ-S/ARM920T 协处理器 CP14, CP15详解
  3. 多媒体会议系统中的延迟
  4. 数学中的几种共轭类型
  5. win7纯净版64位系统下载
  6. MapInfo地图投影的添加
  7. 搜索引擎与信息处理 复习笔记
  8. CSDN博文下载器(JAVA)
  9. Linux中的jobs、fg与bg命令
  10. 基于情感词典的网络文本情感倾向分类模型