Linux centos7 bash编程(小练习)

一、打印九九乘法口诀

这一个for循环嵌套的小练习,难度不大。提供一种写法,供参考:

#!/bin/bash

文件名:99table.sh

打印输出九九乘法口诀表

for i in {1..9}

do

for ((j=1;j<=$i;j++))

do

echo -ne "j\*i=$j\*i\t" #用制表符分隔,表格整齐

done

echo

done

编写为文件,方便保存。执行后效果:

如果写为一行,可以直接在命令行执行:

for i in {1..9}; do for ((j=1;j<=i;j++));do echo -ne "j*i=j\*i\t";done;echo;done

二、打印黑白国际象棋盘

可以调整背景颜色,打印不同的对比色!

#!/bin/bash

#打印输出黑白国际象棋盘

for i in {1..8}

do

for j in {1..8}

do sum=$i+j

if $\[sum%2 -eq 0 ];then

echo -ne "\e[40m \e[m"

else

echo -ne "\e[47m \e[m"

fi

done

echo

done

执行效果:

写为一行,可以直接在命令行执行:

for i in {1..8}; do for j in {1..8};do sum=\[i+j\]; if \[ sum%2 -eq 0 ];then echo -ne "\e[40m \e[m"; else echo -ne "\e[47m \e[m";fi;done;echo;done

修改40m和47m为不同数值,可获得不同效果。

41m ---> 45m

42m --->46m

小结

编程时注意代码结构的正确;训练时可以多设置一些参数,查看效果。

可以采用不同的思路编程,为了达到目标,多练习,多动手!

相关推荐
ltl3 小时前
大多数「无锁」代码其实不是无锁的
linux
ltl3 小时前
Linux 内核的内存屏障:一个让我调了三天的 bug
linux
paopaokaka_luck4 小时前
基于springboot3+vue3的企业考勤管理系统(部门树递归、Echarts图形化分析)
开发语言·spring boot·学习·echarts·mybatis·需求分析·代码规范
minglie14 小时前
zynq高频小数据量PS闭环 抖动时间的测量
学习
long3164 小时前
MySQL 学习练习(配套 01 入门资料)
数据库·学习·mysql
Dontla4 小时前
预置known_hosts如何防止中间人攻击(MITM)?(服务器公钥、服务器私钥)Runner、DNS污染、BGP劫持、同网络ARP欺骗、SSH握手
服务器·网络·ssh
Lonely 净土5 小时前
Rocky Linux 安装教程
linux·运维·服务器
梦雨生生5 小时前
java开发工具(学习第一天)
java·开发语言·学习
光影少年5 小时前
RN的Fabric 渲染流程
运维·前端·javascript·react native·react.js·fabric
A 糖醋排骨6 小时前
grafana loki alloy轻量级日志采集
运维·grafana·loki