如图,执行结果为什么是这样,见下图
bash
æ¯å½ä»¤å¼çè¯è¨ï¼ç¬¬ä¸ä¸ªåè¯ä¼è¢«å½ä½å½ä»¤å»æ¥è¯¢ã
æä»¥ä½ æ§è¡num--,ç³»ç»ä¼è¯å¾æç´¢å为ânum--â çå½ä»¤ã
æ以ä¸ä¸è½ç´æ¥æ§è¡ num--ã
åºè¯¥åæè¿æ ·:
num=$(( num -1 ))
æè
let "num--"
æ¯å½ä»¤å¼çè¯è¨ï¼ç¬¬ä¸ä¸ªåè¯ä¼è¢«å½ä½å½ä»¤å»æ¥è¯¢ã
æä»¥ä½ æ§è¡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"
或者
#!/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
let "acc= acc*num"
num=num-1
done
第3个回答 2012-10-13
num变量--的时候有错误