列印倒序NxN乘法表

来源:http://www.cnblogs.com/M18-BlankBox/archive/2016/03/31/5340456.html
-Advertisement-
Play Games

一.實驗要求: 給定任意一個字元N(N>0),然後列印NxN的倒序乘法表。 二.解決問題: #/!bin/bash# #define functionNxN_fun(){ local i=$1 #定義一個局部變數i控制外層迴圈 while [ $i -ge 1 ];do local j=$i #定義 ...


一.實驗要求:

  • 給定任意一個字元N(N>0),然後列印NxN的倒序乘法表。

二.解決問題

#/!bin/bash
#

#define function
NxN_fun(){

  local i=$1                    #定義一個局部變數i控制外層迴圈
  while [ $i -ge 1 ];do
    local j=$i                    #定義一個局部變數j控制內層迴圈
    while [ $j -ge 1 ];do
      echo -e -n "$i*$j=$[i*j]\t"
      let j--
    done
    echo                    #換行
    let i--
  done
}

#main
Flag=$(echo "$1" | sed 's/[0-9]//g' | wc -c)        #判斷腳本參數是整型還是字元

if [ ! $# -eq 1 ];then                      #判斷腳本參數個數
  echo ">_<||| 很尷尬~!!! Usage:$(basename $0) num."
  exit 5
elif [ ! $Flag -eq 1 ];then                #Flag值不等於1則給定的腳本參數為字元型

  echo ">_<||| 很尷尬~!!! Usage:$(basename $0) num."           #表情符號還是挺不錯的

  exit 5

fi

NxN_fun $1
[ $? -eq 0 ]&&echo "列印$1*$1乘法表完成 (^_^) 嘻嘻"||echo "函數執行錯誤,請檢查...(b_d) 戴了副眼鏡"  #函數執行成功則列印乘法表

三.實驗結果:

四.實驗思考?

   1.怎麼判斷腳本所給參數是字元還是整型,有沒有其他的方法?

 2.外層while迴圈參數能不能直接給$1 ,能怎麼改,不能為什麼?

五.讓人欣慰的代碼段是:

    Flag=$(echo "$1" | sed 's/[0-9]//g' | wc -c)   

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在vs中可以製作安裝程式,但是這個安裝程式預設卸載的時候不會把安裝目錄卸載,如果想在卸載的時候刪除這個目錄,那就要費點周折了。此方法同時適應於程式自刪除以及工作目錄刪除。 基本思路是在程式要退出的時候啟動一個腳本,該腳本會做好善後工作,刪除所有不必要的東西。註意這個腳本應該是在程式完全退出以後再去刪... ...
  • 使用svgalib 下載地址:https://launchpad.net/ubuntu/+source/svgalib/1:1.4.3-30svgalib_1.4.3.orig.tar.gzsvgalib_1.4.3-30.debian.tar.gzsvgalib_1.4.3-30.dsc 打補丁t... ...
  • 目錄: Apache配置 1 需要安裝:VC2015 1 將Apache解壓到C:\www\Apache24\,進入C:\www\Apache24\bin 2 遇到錯誤: 2 PHP配置 3 MYSQL配置 3 Apache配置 需要安裝:VC2015 httpd-2.4.16-win32-VC14 ...
  • 在 MonoDevelop 中預設是關閉對外部程式集(.dll)的調試,可通過如下步驟來解決這個問題。 通過菜單【Edit】-【Preferences】-【Debugger】進入到調試器的設置頁,把“Debug project code only; do not step into framewor ...
  • 1.在使用altium designer畫PCB時,在PCB界面畫線找不到焊盤的中心點,將輸入法切換到英文狀態,按鍵盤D O 勾選snap to object hotspots即可。 2.想高亮單獨顯示共同網路標號,先按住ctrl + shift,同時滑鼠左鍵去選擇相同網路標號一個點即可。 3.對於 ...
  • 最近在看前輩們寫的代碼,他們把沒有用的代碼是註釋掉而不是刪掉。沒用的代碼和註釋很亂,看著心煩,就把註釋刪掉來解讀,頓時爽快多了。 不多說了,直接舉例子 比如一個文本文件 data 里的內弄為 cat a | awd ... #這是一個註釋 #[ $? -eq 0 ] || exit 1 [ $? - ...
  • 馬哥linux運維初級+中級+高級 視頻教程 教學視頻 全套下載(近50G)目錄詳情:18_02_ssl協議、openssl及創建私有CA18_03_OpenSSH服務及其相關應用09_01_磁碟及文件系統管理詳解之三10_05_腳本編程之八 腳本完成磁碟分區格式化20_01_DNS主從複製及區域傳 ...
  • Shell高級編程視頻教程-跟著老男孩一步步學習Shell高級編程實戰視頻教程 教程簡介: 本教程共71節,主要介紹了shell的相關知識教程,如shell編程需要的基礎知識儲備、shell腳本概念介紹及第一個腳本案例、shell腳本基礎知識-作用地位-比其他語言優勢、建立一個規範的shell腳本、 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...