原文链接:http://blog.csdn.net/shanyongxu/article/details/46454985

控制台I/O

可以使用Console.ReadLine()方法从控制台中读取一个输入流(用户按回车键停止),并返回输入的字符串,写入控制台也有两个对应的方法.

Console.Write()

Console.WriteLine()

区别是在输出完成之后是否换行.

C#中还需要输出多个参数,占位符

例如:

int i = 10;

int j = 2;

Console.WriteLine("{0} + {1} = {2}",i,j,i+j);

Console.ReadKey();

也可以指定宽度,正值表示左对齐,负值表示右对齐.例如:

int i = 10;

int j = 2;

Console.WriteLine("   {0,4}\n + {1,4}\n----{2,4}\n",i,j,i+j);

Console.ReadKey();

可以添加一个格式字符串以及一个可选的精度值.

字符串

C

本地货币格式

D

十进制格式,把整数转换为以10为基数的数 ,如果给定一个精度说明符 ,就加上前导 0

E

科学计数法(指数)格式。精度说明符设置小数位 鲰 默认为 6 。格式字符串的大小写(e或 F,)确 定指数符号的大小写.

F

固定点格式 ,精 度说明符设置小数位数 ,可 以为 0

G

普通格式 ,使 用 E或 F格 式取决于哪种格式较简单

N

数字格式 ,用 逗号表示干分符 ,例 如⒓%7.佴

P

百分数格式

X

十六进制格式,精度说明符用于加上前导0

出e/E之外格式字符串不需要考虑大小写

如果要使用格式字符串,应把它放在给出参数个数和字符按宽度的标记后面,并用一个冒号把他们分开.

例如将decimal值格式化为画笔个事,且使用计算机上的地区设置,其精度为两位小数,则使用C2:

decimal i = 940.23m;

decimal j = 73.7m;

Console.WriteLine("  {0,9:C2}\n+{1,9:C2}\n    ---------\n   {2,9:C2}\n",i,j,i+j);

Console.ReadKey();

最后一个技巧

使用占位符替换这些格式字符串,例如

double d = 0.234;

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

//Console.WriteLine("{0:0.00}", d);保留两位小数

Console.ReadKey();

其结果为.23,因 为如果在符号(#)的位置上没有字符 ,就会忽略该符号(#),如果在0的位置上有 一 个字符 ,就 用这个字符代替 0,否 则就显示 0。

C#编程(九)----------控制台I/O的更多相关文章

  1. linux网络编程九:splice函数,高效的零拷贝

    from:http://blog.csdn.net/jasonliuvip/article/details/22600569 linux网络编程九:splice函数,高效的零拷贝 最近在看<Li ...

  2. 不为人知的网络编程(九):理论联系实际,全方位深入理解DNS

    本文原作者:selfboot,博客地址:selfboot.cn,Github地址:github.com/selfboot,感谢原作者的技术分享. 1.引言 对于 DNS(Domain Name Sys ...

  3. Linux 网络编程九(select应用--大并发处理)

    //网络编程服务端 /* * 备注:因为客户端代码.辅助方法代码和epoll相同,所以select只展示服务器端代码 */ #include <stdio.h> #include < ...

  4. 面向对象编程(九)——面向对象三大特性之继承以及重写、Object类的介绍

    面向对象三大特性 面向对象三大特征:继承 :封装/隐藏 :多态(为了适应需求的多种变化,使代码变得更加通用!) 封装:主要实现了隐藏细节,对用户提供访问接口,无需关心方法的具体实现. 继承:很好的实现 ...

  5. Socket编程(九)

    此为网络编程的一个系列,后续会把内容补上.....

  6. Winpcap网络编程九之Winpcap实战,ARP协议获得MAC表及主机通信

    大家好,本次我们须要完毕的任务是: 完毕两台主机之间的数据通信(数据链路层) 仿真ARP协议获得网段内主机的MAC表 使用帧完毕两台主机的通信(Hello! I'm -) 声明:本文章的目的是为大家的 ...

  7. C++面向对象高级编程(九)Reference与重载operator new和operator delete

    摘要: 技术在于交流.沟通,转载请注明出处并保持作品的完整性. 一 Reference 引用:之前提及过,他的主要作用就是取别名,与指针很相似,实现也是基于指针. 1.引用必须有初值,且不能引用nul ...

  8. Python并行编程(九):线程通讯queue

    1.基本概念 当线程之间要共享资源或数据的时候,可能变的非常复杂.Python的threading模块提供了很多同步原语,包括信号量,条件变量,事件和锁.如果可以使用这些原语的话,应该优先考虑使用这些 ...

  9. linux网络编程之socket编程(九)

    转眼又快到十一月份了,北京已经是完全进入冬天的节奏,外面冷风嗖嗖的,不过在夜深人静之时,学习永远成了我最快乐的时光,只有此时会觉得自己是如此踏实,虽说白天工作也是编一天程,但是此时的编程,是一种业余爱 ...

  10. scala编程(九)——控制抽象

    减少代码重复 所有的函数都被分割成通用部分,它们在每次函数调用中都相同,以及非通用部分,在不同的函 数调用中可能会变化.通用部分是函数体,而非通用部分必须由参数提供.当你把函数值用做参数时,算法的非通 ...

随机推荐

  1. R vs Python:载入包 import & library

    数据科学:R & Python 工作 & Kaggle机器学习比赛 可重复函数式编程 一.Python模块的载入 包 Package 模块 module import pandas a ...

  2. 实际工作与JAVA面试题

    1.String 和StringBuilder.StringBuffer 的区别? 答:Java 平台提供了两种类型的字符串:String和StringBuffer / StringBuilder,它 ...

  3. SCTF 2015 pwn试题分析

    Re1 是一个简单的字符串加密.程序使用了多个线程,然后进行同步.等加密线程加密好了之后才会启动验证线程.这个题比较坑的是IDA F5出来的结果不对,不知道是不是混淆机制. 刚开始看的是F5后的伪代码 ...

  4. 在Eclipse中导入新浪微博SDK

    在Eclipse中导入新浪微博SDK 今天在看<Android开发应用实战>,全书都在讲一个android版的新浪微博客户端怎么做,于是按照书上步骤做.网上有人说这本书没有细节,我想对于小 ...

  5. 一台Windows下配置多个Tomcat服务器

    上一篇博客<Windows下配置Tomcat服务器>讲了,如何在一台Windows机器上配置一个Tomcat服务器.这篇介绍一下如何在一台Windows机器上配置多个Tomcat. 第一步 ...

  6. Java中面向对象的理解

    按照惯例,先做一个简单的介绍,现在开始学习 Thinging in Java 4 ,一边看,一边记录,我都不想给自己设定时间安排了,毕竟很少实现过.所以就这样吧!不定期的更新,我都会放到博客中的. 所 ...

  7. OpenJudge——0003:jubeeeeeat

    OpenJudge——0003:jubeeeeeat 描述 众所周知,LZF很喜欢打一个叫Jubeat的游戏.这是个音乐游戏,游戏界面是4×4的方阵,会根据音乐节奏要求玩家按下一些指定方块(以下称co ...

  8. JPG图片EXIF信息提取工具exif

    JPG图片EXIF信息提取工具exif   有相机生成的JPG图片(如照片)都包含有EXIF信息.这些信息包括拍照所使用的设备.地理位置.拍摄时间等敏感信息.Kali Linux内置了EXIF信息提取 ...

  9. python装饰器原理

    妙处在于装饰器的两个return 1.装饰器 # 使用闭包 def wrap(fun): def check(): print("正在检查用户权限!") fun() return ...

  10. 选择排序之Java实现

    选择排序之Java实现 一.方法一 package cn.com.zfc.lesson21.sort; /** * * @title SelectSort * @describe 选择排序 * @au ...