当前位置: 首页 > article >正文

C#入门及进阶教程|C#基本语法(五):控制台应用程序与格式化输出

目录

控制台应用程序与格式化输出

1.控制台(Console类)

        1.1控制台输出

        1.2控制台输入

        1.3格式输出的一般形式              

        1.4字符串的格式化输出

        1.5日期和时间的格式化输出


控制台应用程序与格式化输出

1.控制台(Console类)

        1.1控制台输出

Console.Write ();
Console.WriteLine();

        1.2控制台输入

Console.ReadKey();        //标准输入流读取用户按下的字符或功能键。
Console.ReadLine();       //从标准输入流读取一行字符。

        1.3格式输出的一般形式              

        格式输出的一般形式为:  {N [, M][: 格式码]},  其中,[ ]:表示其中的内容为可选项。N:从零开始的整数,表示第几个参数。M:可选整数,表示最小长度。若参数N的长度小于M,就用空格填充。如果M为负,则左对齐;如果M为正,则右对齐;如果未指定M,则默认为零。

格式码:可选的格式化代码字符串。

        常用格式码及举例:

格 式 符

含    义

示例:(int i=10;double x=10.5;)

输出结果

C

将数字按照金额形式输出

Console.WriteLine("{0:C}",i);

Console.WriteLine("{0:C}",x);

¥10.00

¥10.50

D

输出十进制整数

Console.WriteLine("{0:D}",i);

Console.WriteLine("{0:D5}",i);

10

00010

F

小数点后固定位数

Console.WriteLine("{0:F}",i);

Console.WriteLine("{0:F4}",x);

10.00

10.5000

0

0占位符,如果数字位数不够指定的占位符位数,则左边补0至占位符位数;如果数字位数超过指定的占位符位数,则按照原数字实际位数原样输出。如果小数部分的位数超出指定的占位符位数,则多余的部分四舍五入。

Console.WriteLine("{0:00000}", 123);

Console.WriteLine("{0:000}", 12345);

Console.WriteLine("{0:0000}", 123.64);

Console.WriteLine("{0:00.00}", 123.6484);

00123

12345

0124

123.65

#

#占位符。对整数部分,去掉数字左边的无效0;对小数部分,按照四舍五入原则处理后,再去掉右边的无效0。如果这个数就是0,而又不想让它显示的时候,#占位符很有用

Console.WriteLine("{0:####}", 123);

Console.WriteLine("{0:####}", 123.64);

Console.WriteLine("{0:####.###}", 123.64);

Console.WriteLine("{0:####.##}", 0);

Console.WriteLine("{0:####.##}", 123.648);

123

124

123.64

123.65

        1.4字符串的格式化输出

        对于字符串来说,可以直接利用格式化输出得到希望的格式,例如:        

string s = string.Format("{0, 30}", ' ');  //s得到的结果为30个空格的字符串
string s1 =string.Format("{0, -20}", "15"); //s1得到的结果为左对齐长度为20的字符串

        常用格式举例:

        1) 在ToString中使用d格式

int i = 12345;
// i.ToString("d")表示将i按照实际整数宽度转换为字符串
string str = i.ToString("d");
Console.WriteLine(str);   //结果12345
// i.ToString("d8")表示将i转换为字符串,宽度为8位,不够8位左边用0填充
string str1 = i.ToString("d8");
Console.WriteLine(str1);  //结果00012345

        2)在string.Format中使用d格式

int i = 123;
// {0,7:d}表示第0个参数,宽度7位,不够7位左边用空格填充,d表示十进制整数
string s1 = string.Format("the value is {0,7:d}",i);
Console.WriteLine(s1);   //结果 the value is 123

        3) 在ToString中使用f格式

double i = 12345.6789;
// f2表示浮点数小数部分为2位,多余部分四舍五入,不够2位时右边补零
string str = i.ToString("f2");
Console.WriteLine(str);   //结果 12345.68
string str1 = i.ToString("f6");
Console.WriteLine(str1);  //结果 12345.678900

        4) 在ToString中使用n格式

double i = 12345.6789;
// n表示整数部分从小数点向左每3位用逗号分隔开,小数部分2位,多余部分四舍五入
string str = i.ToString("n");
Console.WriteLine(str);   //结果 12,345.68
// n4表示整数部分从小数点向左每3位用逗号分隔开,小数部分4位,多余部分四舍五入
string str1 = i.ToString("n4");
Console.WriteLine(str1);  //结果 12,345.6789

        5) 在ToString中使用p格式

double i = 0.126;
// p表示百分数形式
string s = string.Format("the value is {0:p}",i);
Console.WriteLine(s);    //结果 the value is 12.60%
string str = i.ToString("p");
Console.WriteLine(str);   //结果 12.60%

        1.5日期和时间的格式化输出

DateTime dt = new DateTime(2006,5,25);
// yy表示年占两位,M表示月占1位,超出1位按实际位数
// d表示日占1位,超出1位按实际位数
string str = dt.ToString("yy.M.d");
Console.WriteLine(str);   //结果 06.5.25
//yyyy表示年占4位,M表示月占1位,超出1位按实际位数,其他按原字符输出
string str1 = dt.ToString("yyyy年M月");
Console.WriteLine(str1);  //结果 2006年5月


http://www.kler.cn/a/228702.html

相关文章:

  • C# LINQ(Language Integrated Query)详解
  • ent.SetDatabaseDefaults()
  • 知识图谱中的word2vec 技术是做什么的?
  • 网络编程-UDP套接字
  • 图像去雾数据集的下载和预处理操作
  • mfc操作json示例
  • 乐意购项目前端开发 #6
  • WordPress主题YIA如何将首页的置顶小工具改为站长推荐小工具?
  • 【Linux】解决:为什么重复创建同一个【进程pid会变化,而ppid父进程id不变?】
  • CTFHUB SSRF POST小记
  • 2024最新版Sublime Text 4安装使用指南
  • VLM 系列——MoE-LLaVa——论文解读
  • 《Python 网络爬虫简易速速上手小册》第1章:Python 网络爬虫基础(2024 最新版)
  • Palworld幻兽帕鲁自建服务器32人联机开黑!
  • layui
  • AI专题:海外科技巨头指引,AI主线逻辑依旧坚挺
  • MySQL学习记录——삼 库的操作
  • ES6中新增Array.of()函数的用法详解
  • python Flask 写一个简易的 web 端程序(附demo)
  • Flutter 网络请求之Dio库
  • 【QT+QGIS跨平台编译】之二十五:【geos+Qt跨平台编译】(一套代码、一套框架,跨平台编译)
  • 【机器学习】某闯关类手游用户流失预测
  • 【算法】枚举——蓝桥杯、日期统计、特殊日期(位数之和)、2023、特殊日期(倍数)、跑步锻炼
  • 安科瑞消防设备电源监控系统在杭后旗医院项目的设计与应用
  • VUE3+TS使用OpenSeadragon学习之旅,实现多图片切换效果
  • sklearn实现数据标准化(Standardization)和归一化(Normalization)