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

小结

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

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

相关推荐
Godspeed Zhao6 小时前
从零开始学AI25——无监督学习之层次聚类
学习·机器学习·聚类
知已难寻6 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
默|笙6 小时前
【Linux网络】网络层协议 IP(1)理解报头、网段划分
linux·网络·tcp/ip
修己xj9 小时前
nslookup 使用指南:两种模式与常用查询技巧
linux
唠玖馆11 小时前
文件系统详解
linux·文件系统·ext2
GeW11 小时前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
David猪大卫12 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
HPtiger13 小时前
C++ 入门笔记:从 C 到 C++ 的核心过渡(命名空间、输入输出、缺省参数、重载、引用、内联)
c语言·c++·学习
星恒随风13 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio13 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型