OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3221|回复: 13

求大神帮忙,新手起步,要求做一个四则计算器

[复制链接]

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
发表于 2015-12-15 18:46:57 | 显示全部楼层 |阅读模式
5金钱

新手求救。要做一个四则计算器,自己编的程序已有个雏形,但是无法完成要求。求大神帮我看看。

四则计算器要求:

1.设计一个两位正整数的四则计算器,可以完成2位正整数的加、减、乘、除。

2.在液晶上显示加数、运算符号、被加数和运算结果;

3.通过按键KEY0和KEY2(即WK_UP)可以选择准备调整的是加数、被加数、还是运算符号;再通过KEY1调整选择调整的加数、被加数、运算符号的具体值。

4.调整过程中,自动进行运算并在液晶上显示运算结果。

[mw_shl_code=c,true]#include "delay.h" #include "sys.h" #include "usart.h" #include "lcd.h" #include "key.h" u8 k;//键值 int i=0,j=0,q=0;//数组 int c;//输出的数 int a[2][10]={ {0,1,2,3,4,5,6,7,8,9}, {0,1,2,3,4,5,6,7,8,9}}; char *p[4]={"+","-","*","/"}; void jm()//显示界面 { LCD_ShowNum(20,90,a[1][j],1,24);//被算数 LCD_ShowString(40,90,200,24,24,p[q]);//运算符 LCD_ShowNum(60,90,a[2][j],1,24);//算数 LCD_ShowString(80,90,200,24,24,"=");//结果 LCD_ShowNum(100,90,c,2,24); } void ys()//运算函数 { switch (q) { case 1: c=a[1][j]+a[2][j];break;//计算加法 case 2: c=a[1][j]-a[2][j];break; case 3: c=a[1][j]*a[2][j];break; case 4: c=a[1][j]/a[2][j];break; default: delay_ms(10);break; } } void choose()//选择函数 { k= KEY_Scan(0); switch (k) { case KEY0_PRES://选择算数或被算数 { i++; if(i>2)i=0; } break; case KEY1_PRES://调整数值 { j++; if(j>10)j=0; } break; case WKUP_PRES://选择符号 { q++; if(q>4)q=0; } break; default: delay_ms(10); break; } ys(); jm(); } int main(void) { delay_init();//初始化 uart_init(9600); LCD_Init(); KEY_Init(); while (1) { choose(); } } [/mw_shl_code]

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

374

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1327
金钱
1327
注册时间
2014-7-23
在线时间
422 小时
发表于 2015-12-15 19:15:50 | 显示全部楼层
回复

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
 楼主| 发表于 2015-12-15 20:45:48 | 显示全部楼层
回复【2楼】guset_03:
---------------------------------
就是帮忙看看上面的代码。怎么修改才能实现要求。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-12-15 22:35:02 | 显示全部楼层
慢慢调试....
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1865
金钱
1865
注册时间
2011-3-29
在线时间
140 小时
发表于 2015-12-16 10:32:35 | 显示全部楼层
说说你的程序有什么问题,大家帮忙分析。想直接要答案的话去其他地方花钱买吧。
业余程序玩家。
回复

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
 楼主| 发表于 2015-12-16 10:40:40 | 显示全部楼层
回复【5楼】ofourme:
---------------------------------
我是自己找不出问题才来问的,搞了一下午就成这样,你帮不了就别回,这样冷嘲热讽有意思?
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2015-12-16 10:53:01 | 显示全部楼层
回复【6楼】微微一笑:
---------------------------------
玻璃心就别来问问题   另外你主楼那个就是提要求,问题不说,你是要外包?
学无止境
回复

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
 楼主| 发表于 2015-12-16 11:01:20 | 显示全部楼层
回复【7楼】jermy_z:
---------------------------------
我需要的帮助是把下面的程序和要求做对照,程序完成不了要求,显示的都是无厘头的数据,我反复试也找不到问题。我上面的表达有那么模糊么。
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2015-12-16 11:03:07 | 显示全部楼层
回复【8楼】微微一笑:
---------------------------------
呵呵
学无止境
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1865
金钱
1865
注册时间
2011-3-29
在线时间
140 小时
发表于 2015-12-16 12:30:20 | 显示全部楼层
回复【6楼】微微一笑:
---------------------------------
冷嘲热讽?我觉得我挺心平气和注意用词的。
建议你先看看<<提问的艺术>>。
如果是喜欢这一行的,你会对bug的发生原因很有兴趣,你认真描述bug的情况,大家可以来相互研究讨论提高。如果你不说清楚,难道要别人几千行代码去一行一行分析吗?而且嵌入式的话硬件环境开发环境又多种多样,你让别人怎么猜?
如果你不喜欢这一行,而只是为了完成作业,说实话的就是道不同不相为谋,简单的问题心情好的话顺手解决,复杂的话就是懒得看了,或者的就像我这种跟你废话的啦。
业余程序玩家。
回复

使用道具 举报

72

主题

2711

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3505
金钱
3505
注册时间
2014-8-4
在线时间
696 小时
发表于 2015-12-16 13:28:03 | 显示全部楼层
回复【6楼】微微一笑:
---------------------------------
1.提问题,有朋友帮忙、回复指导就是一种帮助了,冷嘲热讽没看出来
2.时间那么宝贵吗,搞了一下午就觉得花费很长时间了,如果真是想搞这一行,起步阶段要自己勤动手,不调试个一两周尽量少问
3.以你楼主位的描述和状态,很适合外包,工作量大,问题没有重点
4.心态要摆正,对你以后也有好处
以我资质之鲁钝,当尽平心静气、循序渐进、稳扎稳打之力。
回复

使用道具 举报

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
79
金钱
79
注册时间
2015-11-5
在线时间
0 小时
发表于 2015-12-16 13:44:49 | 显示全部楼层
我也是醉了,C语言基础都不行来说别人对他的指导。一看都是bug,,,,自己好好琢磨吧。别人有看你的帖子并且愿意给你说两句的都是好人了。
回复

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
 楼主| 发表于 2015-12-16 17:31:52 | 显示全部楼层
回复【10楼】ofourme:
---------------------------------
今天上午由于我自己的原因,心态没有摆正,当看到你的评论中“直接要答案”这样的字眼时觉得异常刺眼,当时眼里只有这几个字了,才说出那一番话,下午上了两节课,回来心态好多了,在此我道歉。其实我本来就是什么都不会的,C语言基础都没学好,国家二级都还没过,写成这样都是自己不停翻书写的。程序可能会有些低级可笑的错误,我自己都不知道。自己想想11楼说的对,你们能给我说两句,我现在很感谢。你还能对我这样的废话几句,虽然没学到关于编程的知识,但是为人处事方面是真的值得我反思。我向你道歉。
回复

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2015-11-25
在线时间
7 小时
 楼主| 发表于 2015-12-16 17:33:48 | 显示全部楼层
回复【11楼】龙之谷:
---------------------------------
谢谢你,最后一句点醒了我。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 09:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表