BASH很慢吗?

我在SPOJ – http://www.spoj.com/problems/ALICESIE/上解决了这个问题

问题归结为打印(n 1)/ 2

这是我的C代码,传递0.03秒

#include <stdio.h>
    int main() {
        int test,n;
        scanf("%d",&test);
        while(test--) {
            scanf("%d",&n);
            printf("%d\n",(n + 1) >> 1);
        }
        return 0;
    }

这是我的BASH代码,它超出了时间限制(即> 1s)

read test
while (( test-- ))
do
    read n
    echo "$(((n+1)/2))"
done

任何人都可以让我知道为什么会这样吗? BASH很慢吗?
谢谢.

Bash在执行数字运算时很慢.但这不是Bash的设计目标.

Bash非常快速地编写脚本以自动执行一些重复操作.修改错误的Bash脚本并再次运行它很快.快速找出Bash脚本究竟在做什么(而不是必须寻找你正在查看的C可执行文件的源代码).

而这样的例子不胜枚举.

C和Bash是两种截然不同的语言和环境.如果你抱怨Bash很慢,你就是用它来解决错误的问题.

“不要抱怨螺丝刀在将钉子钉入墙壁时很糟糕.”

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...