zoukankan      html  css  js  c++  java
  • printf脚本使用格式化字符串

    #!/bin/bash

    #使用格式化字符串来指定字符串的宽带,左右对齐方式等。

    printf "%-5s %-10s %-4s "  NO. NAME  MARK

    printf "%-5s %-10s %-4.2f " 1 Jack 80.3456

    printf "%-5s %-10s %-4.2f " 2 James 90.9989

    printf "%-5s %-10s %-4.2f " 3 Jeff 77.564

    # bash printf.sh 

    NO.   NAME       MARK

    1     Jack       80.35

    2     James      91.00

    3     Jeff       77.56

    备注:%s,%c,%d和%f都是格式替换符,它们定义了该如何打印后续参数。%-5s指明了一个格式为左对齐且宽度为5的字符串替换(-表示左对齐,如果不指明-,就表示右对齐)。

    宽度指定了保留给某个字符串的字符数量,对NAME而言,其保留宽度是10,因此,任何NAME字段的内容都会被显示在10字符宽的保留区域内,如果内容不足10个字符,余下的则以空格填充。

    对于浮点数,可以使用其它参数对小数部分进行四舍五入;对于MARK字段,我们将其格式化为%-4.2f,其中的.2是指定保留两位小数,例子中的91.00是被递进了的。

    需要注意的是,每行的格式字符串后都有一个换行符号 ;默认情况下,printf不会自动添加换行符,必须在需要的时候手动添加。

    结束。

  • 相关阅读:
    Samara SAU ACM ICPC 2013-2014 Quarterfinal Qualification Contest
    German Collegiate Programming Contest 2013:E
    German Collegiate Programming Contest 2013:B
    LA 4975
    Codeforces Beta Round #1
    poj 3667 Hotel
    Codeforces Round #207 (Div. 2)
    【USACO 2.3.1】最长前缀
    【USACO 2.2.4】派对灯
    【USACO 2.2.3】循环数
  • 原文地址:https://www.cnblogs.com/liusingbon/p/13408829.html
Copyright © 2011-2022 走看看