使用shell脚本打印9x9乘法表

本文介绍如何使用Shell脚本通过for循环、while循环及它们的组合来打印9x9乘法表。提供了三种不同示例,包括进行条件判断、使用空格作为间隔符等细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.使用for循环打印9x9乘法表:

示例1:

#!/bin/bash

for ((  i=1;i<=9;i++  ))
do
   for ((  j=1;j<=9;j++  ))
   do
      [  $j  -le  $i  ]  &&  echo -n "${i}*${j}=$((i*j))      "    #判断j是否小于i,当j大于i时不输出,输出不换行,末尾加一个制表符
   done
   echo ""           #输出一个换行符                

done


示例2:不做j与i大小的判断

#!/bin/bash
for (( i=1;i<=9;i++ ))
do
   for (( j=1;j<=9;j++ ))
   do
      echo -n "${i}*${j}=$((i*j))       "    #不做j与i的判断,结果将全部输出
   done
   echo ""

done


示例3:输出间隔不使用制表符,用空格替代

#!/bin/bash
for (( i=1;i<=9;i++ ))
do
   for (( j=1;j<=9;j++ ))
   do
      echo -n "${i}*${j}=$((i*j))    "   #使用空格替代制表符,输出结果无法对齐
   done
   echo ""

done


2.while循环打印9x9乘法表:

示例1:

#!/bin/bash
i=1
j=1
while [ $i -lt 10 ]
do
   while [ $j -lt 10 ]
   do
     [ $j -le $i ] &&  echo -n "$i*$j=$((i*j))  "
     let j++
   done
   let i++
   let j=1       #将j重新赋值为1,否则除第一行外后续将全部空行,原因是经过上一次循环后j已不在小于10
   echo ""

done


示例2:去掉let  j=1  ,去掉后除第一行外全部输出空行

#!/bin/bash
i=1
j=1
while [ $i -le 9 ]
do
   while [ $j -le 9 ]
   do
     [ $j -le $i ] &&  echo -n "$i*$j=$((i*j))  "
     let j++
   done
   let i++
   echo ""

done


3.while结合for循环,打印9x9乘法表:

#!/bin/bash
i=1
while [ $i -le 9 ]
do
   for (( j=1;j<=9;j++ ))
   do
     [ $j -le $i ] && echo -n "$i*$j=$((i*j))   "
   done
   echo ""
   let i++

done



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值