C#常用输出格式

输出方法Console. WriteLine( )
Console. WriteLine()方法将数据输出到屏幕并加上一个回车换行符(若不加回车换行
符,可用Console. Write()方法)。
该方法类似于C语言中的printf()函数,
可以采用“{N[,M][:格式化字符串]}”的形式格式化输出字符串,其中的参数含义如下。
①花括号({}): 用来在输出字符串中插人变量的值。
N:表示输出变量的序号,从0开始,例如当N为0时,对应输出第1个变量的值;当
N为2时,对应输出第3个变量的值,依此类推。
[,M]:可选项,其中M表示输出的变量所占的字符个数。当这个值为负数时,输出的变量按照左对齐方式排列;如果这个值为正数,输出的变量按照右对齐方式排列。
[:格式化字符串]:可选项,因为在向控制台输出时常常需要指定输出字符串的格式。
通过使用标准数字格式字符串,可以使用Xn的形式来指定结果字符串的格式,其中X
指定数字的格式,n指定数字的精度,即有效数字的位数。这里提供了8个常用的格
式字符。
注意:在一个Write/ WriteLine方法中,N的序号是连续的,且从0开始。例如,以下语句
都是错误的:

Console. WriteLine("{0} and {2}",1.2);//序号不连续
Console. WriteLine("{1} and {2}".1,2);//序号不是从0开始的
格式字符含义示例输出结果
C或c将数据转换成货币格式Console. WriteLine("{0,5:c}", 123. 456);¥123.46
D或d整数数据类型格式Console. WriteLine("{0:D4}", 123);0123
E或e科学记数法格式Console. W riteLine("{0:E4}", 123. 456);1.2346E十002
F或f浮点数据类型格式Console. WriteLine("{0:f4}", 123. 456);123.4560
G或g通用格式Console. WriteLine("{0:g)", 123. 456);123.456
N或n自然数据格式Console. WriteLine("{0:n}", 123. 456);123.46
X或x十六进制数据格式Console. WriteLine("{0:x}", 12345);3039

举个详细的例子:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace day2_25
{class Program{static void Main(string[] args){double d = 123.456;Console.WriteLine("d={0:c2}",d);//d=¥123.46Console.WriteLine("d={0:c3}", d);//d=¥123.456Console.WriteLine("d={0:c4}", d);//d=¥123.4560Console.WriteLine("d={0,5:c2}", d);//d=¥123.46Console.WriteLine("d={0,6:c3}", d);//d=¥123.456Console.WriteLine("d={0,7:c4}", d);//d=¥123.4560Console.WriteLine("d={0,8:c4}", d);//d=¥123.4560//由上面的例子可以得出:{N[,M][:格式化字符串]}  [:格式化字符串]的优先级要比[,M]高//即d={0,8:c4},.8代表宽度为8位,而c4代表将数据转换成货币格式且保留4位小数位,由于保留4位小数,故d只能为123.4560,7位数Console.WriteLine("d={0:e4}",d);//d=1.2346e+002Console.WriteLine("d={0,3:e5}", d);//d=1.23456e+002Console.WriteLine("d={0,4:e6}", d);//d=1.234560e+002//d={0,4:e6}其中e6表示6位小数位数Console.WriteLine("d={0:f4}",d);//d=123.4560Console.WriteLine("d={0:f5}", d);//d=123.45600Console.WriteLine("d={0:f6}", d);//d=123.456000Console.WriteLine("d={0,4:f4}", d);//d=123.4560Console.WriteLine("d={0,5:f5}", d);//d=123.45600Console.WriteLine("d={0,10:f10}", d);//d=123.4560000000//d={0,10:f10}其中f10表示浮点数的小数位数为10位,总宽度也为10位,如果相冲突,以后面的小数位数为准Console.WriteLine("d={0:g}",d);//d=123.456Console.WriteLine("d={0:g5}", d);//d=123.46Console.WriteLine("d={0:g6}", d);//d=123.456Console.WriteLine("d={0:g7}", d);//d=123.456//d={0:g7}按理说会有7位小数,但是由于d本身是123.456,而且运用的是g,所以精读最高到它本身,再多也无用//d={0:g}默认为原样输出Console.WriteLine("d={0:n}", d);//d=123.46Console.WriteLine("d={0:n2}", d);//d=123.46Console.WriteLine("d={0:n3}", d);//d=123.456Console.WriteLine("d={0:n4}", d);//d=123.4560Console.WriteLine("d={0:n5}", d);//d=123.45600Console.WriteLine("d={0:n6}", d);//d=123.456000Console.WriteLine("d={0:n7}", d);//d=123.4560000//d={0:n}默认为n2,保留两位小数位数Console.ReadLine();}}
}

运行输出结果如下:
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace yy
{class Program{static void Main(string[] args){int a = 1234, b = -1234;Console.WriteLine("a={0},b={1}", a, b);//a=1234,b=-1234Console.WriteLine("a={0:D5},b={1:D5}", a, b);//a=01234,b=-01234Console.WriteLine("a={0:c3},b={1:c2}", a, b);//a=¥1,234.000,b=¥-1,234.00//a={0:D5},b={1:D5}其中D5表示一共5位数//a={0:c3},b={1:c2}其中c3和c2表示小数位数分别为3位和2位Console.ReadLine();}}
}

运行输出结果如下:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379252.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

栈-顺序表(代码、分析、汇编)

目录:代码:分析:汇编:代码: SeqList.h #ifndef _SEQLIST_H_ #define _SEQLIST_H_typedef void SeqList;//定义顺序表类型 typedef void SeqListNode;//定义顺序表节点类型SeqList* SeqList_Create(int capacity);voi…

sqlserver 数据库日志文件过大的问题

USE[master] GO ALTER DATABASE 【数据库】 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 【数据库】 SET RECOVERY SIMPLE --简单模式 GO USE 【数据库】 GO DBCC SHRINKFILE (N【数据库日志文件名(如:msdb_log)】 , 11, TRUNCATE…

SQl Server存储过程基础

一、存储过程的概念 存储过程是SQL语句和可选控制流语句的预编译集合,存储在数据库中,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其他强大的编程功能。 在SQL Server中存储过程分为两类:即系统提供的存储…

isinfinite_Java Double类isInfinite()方法与示例

isinfinite双类isInfinite()方法 (Double class isInfinite() method) isInfinite() method is available in java.lang package. isInfinite()方法在java.lang包中可用。 isInfinite() method is used to check infinity (i.e. either positive infinity or negative infinity…

MySql学习(一)

SQL语句的分类:DDL(数据定义语言)、DML(数据操作语言)、DCL(数据控制语句)MySql的命令语句以;或\g结束建库:Create database name;建表:Create tablle name;选…

C盘爆红的解决办法

方法一:开始—>搜索—>cleanmgr—>磁盘清理—>选择你所需要清理的磁盘即可 方法二:我的电脑右击—>管理—>磁盘管理—>右键选择你要压缩的磁盘—>压缩卷—>输入压缩空间量—>压缩—>右键 拓展卷—>下一步—>输入…

栈应用_检测成对符号是否正确使用(代码、分析、汇编)

目录&#xff1a;代码&#xff1a;分析&#xff1a;汇编&#xff1a;代码&#xff1a; LinkList.h LinkList.c LinkStack.h LinkStack.c 栈-线性表 main.c #include <stdio.h> #include <stdlib.h> #include "LinkStack.h"//该程序是检查字符串中的出…

Oracle 参数分类 和 参数的查看方法

Oracle数据库系统根据初始化参数文件init.ora中设置的参数来配置自身的启动&#xff0c;每个实例在启动之前&#xff0c;首先读取这些参数文件中设置的不同参数。 Oracle系统中的参数&#xff0c;根据系统使用情况可以简单分为两大类&#xff1a; 普通参数&#xff1a;也就是Or…

java 方法 示例_Java集合checkedList()方法与示例

java 方法 示例集合类checkedList()方法 (Collections Class checkedList() method) checkedList() Method is available in java.lang package. CheckedList()方法在java.lang包中可用。 checkedList() Method is used to return the typesafe view of the given List at runt…

ParameterizedTypeImpl

关于“通过反射获得泛型的参数化类型”的问题&#xff1a; 下面是张老师 通过反射获得泛型的参数化类型的一段代码import java.util.*; import java.lang.reflect.*;public class GenericalReflection { private Vector<Date> dates new Vector<Date>(); public v…

Spyder打开报错解决办法

删除C:\Users\Administrator路径下.matplotlib和.spyder-py3&#xff08;你的有可能是.spyder2或.spyder3&#xff09;这两个文件夹&#xff0c;然后再重启Spyder即可 &#xff08;本人也是查找多篇大佬博客然后最后找到的解决方法&#xff09;

ERP软件销售的方法论--SPIN销售法(SPIN Selling)

有许多人一直在做的ERP软件产品的销售&#xff0c;也接受了许多关于销售方法的培训&#xff0c;我所了解的就包括有C139&#xff0c;用友的《策略九问》等方法&#xff0c;但其实行业内早就有先驱创立了相关的销售方法&#xff0c;那就是SPIN销售法&#xff0c;之前一直都是只知…

ffmpeg - AVPacket内存问题分析(AVFrame一样的)

目录&#xff1a;1、av_packet_alloc()和av_packet_free()2、av_init_packet()的问题3、av_packet_move_ref()的问题4、av_packet_clone()的问题5、AVPacket的引用计数问题6、 AVFrame一样的1、av_packet_alloc()和av_packet_free() 源码中av_packet_unref()调用av_buffer_unre…

Java类class isSynthetic()方法及示例

类的类isSynthetic()方法 (Class class isSynthetic() method) isSynthetic() method is available in java.lang package. isSynthetic()方法在java.lang包中可用。 isSynthetic() method is used to check whether this Class is a synthetic class or not. isSynthetic()方法…

BNU OJ 第26303 题 Touchscreen Keyboard

BNU OJ第26303题Touchscreen Keyboard&#xff08;题目链接&#xff09;的解题报告。 原题如下&#xff1a; Touchscreen Keyboard Problem Description Nowadays, people do not use hardware keyboards but touchscreens. Usually, they touch on the wrong letters with the…

列表(二)

1&#xff0c;什么是列表&#xff1f; 列表由一系列按特定顺序排列的元素组成。得知列表内的元素是有序的。 在Python中&#xff0c;用方括号&#xff08;[]&#xff09;来表示列表&#xff0c;并用逗号来分隔其中的元素。 color [red,blue,black,yellow]#定义一个字符串列表…

Zigbee在.Net Micro Framework系统中的应用

Zigbee是IEEE 802.15.4协议的代名词。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞&#xff0c;由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息&#xff0c;也就是说蜜蜂依靠这样的方式构成…

ffmpeg-AVFrame分配内存问题

目录&#xff1a;1、格式&#xff1a;交错式2、格式&#xff1a;平坦式3、总结&#xff1a;1、格式&#xff1a;交错式 LRLRRLRLRLRLRLRLRLR 2、格式&#xff1a;平坦式 LLLLLLRRRRRR 3、总结&#xff1a; 两种方式的内存排列在AVFrame中分配是有区别的 交错式在一个buf…

stl中map函数_map :: empty()函数以及C ++ STL中的Example

stl中map函数C STL映射:: empty() (C STL map::empty()) It is built-in function in C STL and used to check whether the map container is empty or not i.e whether its size is 0 or not? 它是C STL中的内置函数&#xff0c;用于检查地图容器是否为空&#xff0c;即其…

C#使用Dotfuscator混淆代码以及加密

C#编写的代码如果不进行一定程度的混淆和加密&#xff0c;那么是非常容易被反编译进行破解的&#xff0c;特别是对于一些商业用途的C#软件来说&#xff0c;因为盯着的人多&#xff0c;更是极易被攻破。使用Dotfuscator可以实现混淆代码、变量名修改、字符串加密等功能。 这里介…