可以使用循环将整数的每个位数分离出来,并逐一打印。
下面是代码示例:
#!/bin/bash
echo "请输入一个小于10000的整数:"
read num
if [ $num -lt 1 -o $num -gt 9999 ]; then
echo "请输入1~9999之间的整数!"
exit 1
fi
while [ $num -gt 0 ]; do
digit=$(($num % 10)) # 取个位数
echo $digit
num=$(($num / 10)) # 删除已经被取出的个位数
done
首先通过 read
命令获取用户输入的整数,然后使用 if
判断输入的数值是否合法(在 1~9999 之间)。
接下来使用 while
循环从输入的整数中逐一取出每个位数,并通过 echo
逐一输出。循环条件为输入的整数变为 0。
其中 $num % 10
取出整数的个位数,$num / 10
删除已经被取出的个位数。