linux shell 关于循环语句的问题

如图,执行结果为什么是这样,见下图

bash
是命令式的语言,第一个单词会被当作命令去查询。
所以你执行num--,系统会试图搜索名为“num--” 的命令。
所以下不能直接执行 num--。
应该写成这样:
num=$(( num -1 ))
或者
let "num--"
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-13
原来是求阶乘呀,给num--加两层,变成((num--))
或者
#!/bin/bash
echo -n "请输入要求的阶乘数:"
read num
acc=1
while [ $num -gt 1 ]
do
let "acc=$acc*$num"
let "num--"
done
echo "acc=$acc"
第2个回答  2012-10-13
do
let "acc= acc*num"
num=num-1
done
第3个回答  2012-10-13
num变量--的时候有错误

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网