两数调换
2013-07-27 20:10
78 查看
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code f[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
sbit wela=P1^1;
sbit dula=P1^0;
sbit jian=P2^4;
void swap(uchar x,uchar y);
uchar number1,number2;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=150;y>0;y--);
}
void main()
{
uchar a=3,b=8;
while(1)
{
if(jian==0)
{
delay(10);
if(jian==0)
{
swap(a,b);
dula=1;
P0=f[number1];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay(5);
dula=1;
P0=f[number2];
dula=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
delay(5);
}
}
else
{
number1=a;
number2=b;
dula=1;
P0=f[number1];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay(5);
dula=1;
P0=f[number2];
dula=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
delay(5);
}
}
}
void swap(uchar x,uchar y)
{
number1=y;
number2=x;
}
#define uint unsigned int
#define uchar unsigned char
uchar code f[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
sbit wela=P1^1;
sbit dula=P1^0;
sbit jian=P2^4;
void swap(uchar x,uchar y);
uchar number1,number2;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=150;y>0;y--);
}
void main()
{
uchar a=3,b=8;
while(1)
{
if(jian==0)
{
delay(10);
if(jian==0)
{
swap(a,b);
dula=1;
P0=f[number1];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay(5);
dula=1;
P0=f[number2];
dula=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
delay(5);
}
}
else
{
number1=a;
number2=b;
dula=1;
P0=f[number1];
dula=0;
P0=0xff;
wela=1;
P0=0xfd;
wela=0;
delay(5);
dula=1;
P0=f[number2];
dula=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
delay(5);
}
}
}
void swap(uchar x,uchar y)
{
number1=y;
number2=x;
}
相关文章推荐
- 两数调换
- 两数调换
- ajax 笔记--调用WebService实现求两数之和
- 进行两数相比较的条件分支命令
- 交换两数,不使用第三变量,且考虑溢出问题
- 巧用调换 批量删除Word中过剩软回车【↓】
- 5X5矩阵调换!
- 判断数组中是否存在两数之和等于X
- dom4j 调换xml中两个元素的位置
- 计算两数之间的最大公约数
- 【微软谷歌面试100题--【14】有序序列的两数之和等于给定的数sum
- C++ 第七周任务1-求两数正差值
- 第七周上机任务1-求两数正差值
- 给定两个正整数,求出两数的正差值并输出
- 不用比较运算符,判断int型的a,b两数的大小的答案
- float 类型精度和两数比较大小
- 1015 两数交换输出顺序
- 第一章C++初步--项目1求两数正差值
- 两数相乘算法,输入的数字为string类型
- 求两数的正差值