| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2499 人关注过本帖
标题:出一道题目让大家做做
只看楼主 加入收藏
zbqf109
Rank: 1
等 级:新手上路
帖 子:289
专家分:0
注 册:2006-12-31
收藏
得分:0 
这个题目并不简单。其实是正则式的处理。如果只要两个数做运算,当然容易,可是如果是若干个呢?用逆波兰式确实可以解决问题,但仅是一种方法。大家是否想过一个shell是如何处理命令的参数的呢?

坚决不跟用TC的人打交道!
2007-12-31 02:05
灭火的风
Rank: 2
来 自:杭州
等 级:论坛游民
帖 子:161
专家分:10
注 册:2006-6-15
收藏
得分:0 
现在的bash是很高效的东西,它的算法一定很好的,很多程序甚至都是shell脚本写,速度也不见得慢(虽然的确比二进制程序慢一些)。
2007-12-31 02:09
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
不管怎样都只是一个简单的数字运算程序

—>〉Sun〈<—
2007-12-31 02:49
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
/* 随便写了一个 */

#include <stdio.h>

int fun(double a, double b, char ch, double * z);

int main(void)
{
    double a, b, c;
    char ch = '\0';
    int k;
   
    while(ch != 'q')
    {
        k = scanf("%lf%c%lf", &a, &ch, &b);
        while(getchar() != '\n')
            continue;
        (k == 3 && fun(a, b, ch, &c) ) ? printf("   = %g\n\n", c)
                                       : puts("无效输入!\n");
    }
   
    puts("Bye!");
    return 0;
}

int fun(double a, double b, char ch, double * z)
{
    switch(ch)
    {
        case '+':
            *z = a + b;
            break;
        case '-':
            *z = a - b;
            break;
        case '*':
            *z = a * b;
            break;
        case '/':
            *z = a / b;
            break;
        default :
            return 0;
    }
    return 1;
}


[[italic] 本帖最后由 cosdos 于 2007-12-31 03:19 编辑 [/italic]]

—>〉Sun〈<—
2007-12-31 03:17
灭火的风
Rank: 2
来 自:杭州
等 级:论坛游民
帖 子:161
专家分:10
注 册:2006-6-15
收藏
得分:0 
楼主说明一下用意啊,是要得到一个考虑全面的程序还是一个讲究效率的程序?
2007-12-31 03:34
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
收藏
得分:0 
就cosdos的代码而言存在很多个的问题.
现在我重新申明一下这是一道面试题目.
或者说这是一个客户对你描述它的一个
需求文档.所以考虑的东西是全面的.
2007-12-31 09:05
56335025
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-12-29
收藏
得分:0 
就一个人写了个代码...不够看啊......当是帮我们新手....大家多弄几个不同的代码..
2007-12-31 09:55
封闭
Rank: 9Rank: 9Rank: 9
来 自:广东省汕头市
等 级:蜘蛛侠
威 望:1
帖 子:501
专家分:1084
注 册:2007-9-14
收藏
得分:0 
'/'除的要怎么算呢??
比如输入98/3=32.666666
那要怎么算呢?
2007-12-31 10:12
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
得写个处理字符串的才行啊

—>〉Sun〈<—
2007-12-31 12:17
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
程序必须按照程序必须按照一定的格式进行输入,才能有响应
命名行程序几乎都这样。

—>〉Sun〈<—
2007-12-31 12:21
快速回复:出一道题目让大家做做
数据加载中...
 
   



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

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