| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2872 人关注过本帖
标题:写了个计算器程序,求完善~
只看楼主 加入收藏
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:66 
写了个计算器程序,求完善~
程序代码:
# include <stdio.h>
int main(void)
{
    double count(double a, char b, double c);// 声明一个计算函数
    double a;
    char b;
    double c;

    printf("This is a calculator:\n");
//    printf("格式如: 4*5\n");

    for (;;) //循环多次计算
    {   
       
        scanf("%lf", &a); //不小心把%lf写成%d会出错
        scanf("%c", &b);
        scanf("%lf", &c);
        printf("%lf\n", count(a,b,c));
    }
    return 0;
}
double count(double a, char b, double c)  //定义一个计算函数
{
    switch (b) //判断b是什么符合
    {   
        case 42 :  return a*c; break; //42对应的符合是 *
        case 43 :  return a+c; break; //    +
        case 45 :  return a-c; break; //    -
        case 47 :  return a/c; break; //    /
        default : printf("错误:只能计算加(+)、减(-)、乘(*)、除(/).\n");
    }
}



                  求完善,怎么样才能实现任何时候按ESC就退出程序。我用exit函数弄了好长时间也搞不了。不知道怎么才能随时接收字符。如果还有其他的完善,请不吝赐教。







                                                                                 
搜索更多相关主题的帖子: 计算器 color 
2011-08-08 22:58
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
收藏
得分:0 
  都来看看啦!
2011-08-08 23:00
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
嘿嘿,先想几天。

授人以渔,不授人以鱼。
2011-08-08 23:02
木偶然
Rank: 2
等 级:论坛游民
帖 子:29
专家分:22
注 册:2011-6-12
收藏
得分:1 
要实现按ESC退出那要涉及到windows程序设计里的消息机制了,有个WM_CHAR消息,专门用来处理键盘输入
2011-08-08 23:08
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
收藏
得分:0 
回复 3楼 TonyDeng
我是想用exit函数来的,不过就是不知道怎么才能做到随时。
2011-08-08 23:12
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
收藏
得分:0 
回复 4楼 木偶然
专业名词——不懂
2011-08-08 23:13
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用a9517495424在2011-8-8 23:12:39的发言:

我是想用exit函数来的,不过就是不知道怎么才能做到随时。

跟那个无关,是你能够逐个读键盘的问题,用getch()类函数。我再三说过:别指靠scanf()帮你做实用的软件。

授人以渔,不授人以鱼。
2011-08-08 23:17
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
收藏
得分:0 
回复 7楼 TonyDeng
查了资料,getch就一个功能,接收字符,可是不会在每一条语句后面都加个判断是否退出吧?
2011-08-08 23:38
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
这就是你学编程最需要学的地方了,自己先思考一下,带着问题钻研,胜于别人马上给你解决。想一想你编写菜单驱动模块是怎么做的。明天我给你一个示范取代scanf()的程序,可以拿来用。

[ 本帖最后由 TonyDeng 于 2011-8-8 23:41 编辑 ]

授人以渔,不授人以鱼。
2011-08-08 23:40
a9517495424
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:305
专家分:139
注 册:2011-7-20
收藏
得分:0 
编写菜单驱动模块没做过...
2011-08-08 23:42
快速回复:写了个计算器程序,求完善~
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015852 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved