用c语言编写易简计算器

在c51中用c语言编写简易计算器

#include

#define BYTE unsigned char

int jh;

int a;

int b;

int c; /*c是符号*/

/*按键的值*/

sbit P11=P1^3;

sbit P12=P1^2;

sbit P13=P1^1;

sbit P14=P1^0;

BYTE disply[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void delay(int ms) //延时函数

{

while(ms--)

{ int h;

for( h=0;h<=250;h++)

{

;

}

}

}

void get_jianzhi() //获取键盘值的函数

{

BYTE disi;BYTE gaosi;

gaosi=P2;

P2=0x0f;delay(10 );disi=P2;

gaosi=gaosi+disi;

switch(gaosi)

{

case 0xee:{jh=0;break;}

case 0xde:{jh=1;break;}

case 0xbe:{jh=2;break;}

case 0x7e:{jh=3;break;}

case 0xed:{jh=4;break;}

case 0xdd:{jh=5;break;}

case 0xbd:{jh=6;break;}

case 0x7d:{jh=7;break;}

case 0xeb:{jh=8;break;}

case 0xdb:{jh=9;break;}

case 0xbb:{jh=10;break;}

case 0x7b:{jh=11;break;}

case 0xe7:{jh=12;break;}

case 0xd7:{jh=13;break;}

case 0xb7:{jh=14;break;}

case 0x77:{jh=15;break;}

}

do{P2=0xf0;}while(P2!=0xf0);

}

void show() /*显示函数*/

{

BYTE m; /*千位*/

BYTE h; /*百位*/

BYTE j; /*十位*/

BYTE i; /*个位*/

P3=0xff;

if(c==14)

{b=0;}

else

{ }

while(P2==0xf0) /*有键按下则跳出循环函数*/

{

j=0;i=0;h=0;m=0;

if(b!=0) /*b不为0则显示b并判断它有几位数*/

{

if(b>99) {h=b/100;j=(b-h*100)/10;i=b%10;}

else{

if(b>9){j=b/10;i=b%10;}

else{i=b;}

}

}

else{

if(a>999)

{ m=a/1000;h=(a-m*1000)/100;

j=(a-m*1000-h*100)/10;i=a%10;

}

用c语言编写6位计算器,用c语言编写易简计算器.doc相关推荐

  1. 单片机C语言中的位运算符,单片机c语言教程第八课 运算符和表达式(位运算符)...

    学过汇编的朋友都知道汇编对位的处理能力是很强的,但是单片机C语言也能对运算对象进行按位操作,从而使单片机C语言也能具有一定的对硬件直接进行操作的能力.位运算符的作用是按位对变量进行运算,但是并不改变参 ...

  2. c语言 正整数 几位 逆序,c语言经典例题:正整数求位数and求顺、逆序位数

    经典例题:正整数求位数and求顺.逆序位数 题目要求: 给出一个int整形正整数,要求: 1.求出它是几位数字 2.按照逆序分别输出每位数字,例如123输出为321 3.按正序输出每位数字 分析: 一 ...

  3. 用c语言输出11位电话号码,用C语言结构体解决 “从键盘输入五个用户的数据,包括姓名和电话号码,要求按姓名排序后,输出用户数据...

    满意答案 //希望我的回答对你的学习有帮助 #include #include struct Student { char Name[10];//学生的姓名,使用字符数组存储,长度为 10 char  ...

  4. 怎么得到16位校检和-c语言,16位CRC校验C语言算法.pdf

    16位CRC校验C语言算法.pdf CRC 算法原理及C 语言实现 摘 要 本文从理论上推导出CRC算法实现原理,给出三种分别适应不同计算机或微控 制器硬件环境的C语言程序.读者更能根据本算法原理,用 ...

  5. c语言课程设计之简易计算器,简易计算器课程设计 帮忙写简单计算器课程设计...

    帮忙写简单计算器课程设计书繁华若真如一梦,过而无痕多好,人就不必失意,只当醉了一场,醒来仍过平淡的生活. 程序 #include #include //定义atlf函数 #include 简介下的 要 ...

  6. c语言汉字的ascii,C语言中两位ASCII码可以表示汉字

    ******************************************************** 现在开始分析: 资料一说: "206 210 176 174 214 236 ...

  7. 易语言之X64位内存注入DLL技术

    说到易语言对64位进程注入dll方面, 虽然我们Game-EC模块里面已经有对64位程序进行注入dll的功能了,最近研究开发了另外一种对64位程序进程进行注入dll的功能,今天给大家带来的是最近开发的 ...

  8. Grace Hopper:编译语言之母、千年虫制造者、世界第三位程序员(COBOL语言创始人)、海军少将

    (本文转自51CTO,原文地址:http://developer.51cto.com/art/200912/171577.htm) 编者按:1992年1月1日,美国海军少将,Grace Hopper( ...

  9. C语言编程的按位或返回值,c语言的按位运算符怎么操作!?

    c语言的按位运算符怎么操作!? 答案:2  信息版本:手机版 解决时间 2019-10-06 03:32 已解决 2019-10-05 10:30 就是& | ^ - >> < ...

  10. c语言中输入位权1,精通C语言程序设计1-编程基础.pptx

    编程基础;什么是编程语言为什么学C语言程序与内存计算机中的数制进制转换数据在内存中的存储 ;学习编程语言之前,首先要搞清楚"编程语言"这个概念.很小的时候,父母就教我们开口说话,也 ...

最新文章

  1. TCP连接的状态转换图深度剖析
  2. 使用MrBayes构建贝叶斯系统发育树【实践】
  3. java对象深入理解
  4. OpenCV语义分割semantic segmentation的实例(附完整代码)
  5. 验证启用了不安全的HTTP方法
  6. 168输出为861java_AcWing 861. 二分图的最大匹配-java-关键处注释
  7. GDI+绘制的一个Report Designer原型
  8. datepick二格式 化时间_同样是持久化,竟然有这么大的差别
  9. 每天一道剑指offer-二叉搜索树与双向链表
  10. 2021京东商城APP手机模板 HTML+CSS+JavaScript
  11. 软件岗位--CTO、技术VP、技术总监、首席架构师
  12. 基础教学 | 什么是负载均衡?
  13. 计算机输入法不能切换用户登录,Win7输入法无法切换怎么办?
  14. redis streams_如何使用Redis Streams
  15. 使用JavaScript使浏览器进入全屏或退出全屏
  16. flutter Icon一览表,使用字符映射表查看所有图标并使用
  17. c# MVC 网页开发
  18. idea git rebase ---- 合并多个提交到某个分支(实用)
  19. Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能
  20. 2021年度总结 | 葡萄城软件开发技术回顾(下)

热门文章

  1. 拼接、比较与计算——哥德尔读后之十四
  2. C++二分查找相关函数用法总结
  3. 漏刻有时云守护数据可视化画质感知状态迭代说明文档
  4. 修复升级ndk到17.0.4754217编译so失败问题
  5. Julia之初体验(九)字符串连接与匹配
  6. Android开发之殇
  7. matlab蚁群算法解决vrp过程,蚁群算法MATLAB解VRP问题
  8. ubuntu server 20.04 配置无线wifi网络并设置固定ip公司连接家里的linux服务器配置
  9. 客户分享微信个人号私域流量池养号技巧:外部储蓄号、内部储蓄号应该如何分别运营和养号!...
  10. 史上最全无线通信频率分配表