c/c++ 输入输出技巧
C:
小数的四舍五入问题
小数用 %.xf 输出的话 是会自动四舍五入的
比如说
double e = 2.718, c = 3.141;
printf("%.2lf\n", e);
printf("%.2lf\n", c);
printf("%.2lf\n", (int)(e * 100) / 100.0);
printf("%.2lf\n", (int)(c * 100) / 100.0);
运行结果
也就是说 如果要求 不要让它进位 像整数除法一样,那么就要类似于那样的操作
如果要保留任意 从键盘输入的N位小数输出一个数字 那怎么办呢
printf("%.*lf\n",c,d); // c 表示保留的小数位数,它替代的是*的位置
对齐问题:
printf("%-5d\n%5d", a, b); //左对齐 无负号 右对齐
填充问题
printf("%05d\n", a); // 如果输出的位数不够五位 自动用0补齐 或者还可以用空格补齐 好像不能填充其他符号吧,,C语言
读入问题
scanf("%1d", &a); // 这样就会只读进来一位数字
读入字符问题
printf(" %c", &c); // 这样就可以防止读入空格 因为%c 前面的空格可以吸收空格和空行 就不用再打 getchar()
按格式读入问题
比如说有的题目的input 要求是 (a, b)
但实际上 我们只需要 读入a 和 b 就可以了
scanf("(%d,%d)", &a, &b); // 只要按照它的格式 来就可以了 就像前面的空格可以吸收空格和空行一样
C++
保留小数问题
double e = 2.718, c = 3.141;
cout << fixed; // 表示按照小数形式输出小数 默认是按照科学计数法输出小数
cout.precision(2); // 表示输出的小数保留几位
cout << e << " " << c << endl;
如果要按格式输出 比如左对齐 右对齐
double e = 2.718, c = 3.141;
cout << setw (20); // 宽度
cout << left << e << endl; // 左对齐
cout << right << e << endl; // 右对齐
填充问题
double e = 2.718, c = 3.141;
cout.fill('*'); // 填充'*' 实际上 ' ' 里面是随便填的 不像 c 里面 只能填充0 和 空字符
cout << left << setw(20) << e << endl; // 表明 左对齐 宽度20
cout << right << setw(20) << e << endl; // 表明 右对齐 宽度20
c/c++ 输入输出技巧的更多相关文章
- Java一点输入输出技巧
输入: 格式1:Scanner sc = new Scanner(System.in); 格式2:Scanner sc = new Scanner(new BufferedInputStream(Sy ...
- 学大伟业 Day 1 培训总结
第一天培训,讲的基本算法,东西很多.还有些数论,图论,数据结构and some small tricks 一.输入输出技巧 //输入输出技巧 /* scanf.printf:速度快,需要记忆不同数据类 ...
- FPGA编程技巧系列之输入输出偏移约束详解
1. 偏移约束的作用 偏移约束(Offset Constraint)用来定义一个外部时钟引脚(Pad)和数据输入输出引脚之间的时序关系,这种时序关系也被称为器件上的Pad-to-Setup或Clo ...
- 【OI技巧】解决cin、cout因输入输出慢而TLE的问题
语言本身没有问题!! 语言本身没有问题!! 语言本身没有问题!! C++本来的设计就是将输入输出流和C的标准输入输出挂钩在一起,这样就导致cin,cout输入输出前先要将内容放入缓冲区,最后再由cin ...
- SQL Server存储过程Return、output参数及使用技巧
SQL Server目前正日益成为WindowNT操作系统上面最为重要的一种数据库管理系统,随着 SQL Server2000的推出,微软的这种数据库服务系统真正地实现了在WindowsNT/2000 ...
- MATLAB对于文本文件(txt)数据读取的技巧总结(经典中的经典)
振动论坛原版主eight的经典贴http://www.chinavib.com/thread-45622-1-1.html MATLAB对于文本文件(txt)进行数据读取的技巧总结(经典中的经典)由于 ...
- DOS下常用网络命令技巧
DOS,即使对于许多自称了解计算机的人而言,也是一个比较陌生的词汇.然而,在网络管理过程中,DOS命令却是一个不可逾越的障碍,几乎所有的网络命令都运行在DOS界面.对初级用户而言,掌握一些常用网络命令 ...
- 最有用的Linux命令行使用技巧集锦
最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考. 下面介绍的都是一些命令行工具,这些工具在 ...
- WEB/HTTP 调试利器 Fiddler 的一些技巧分享
1.原理简介: Fiddler 是目前最强大最好用的 Web 调试工具之一,它能记录所有客户端和服务器的http和https请求, 允许你监视,设置 CGI 请求的断点,甚至修改输入输出数据.同类的工 ...
随机推荐
- Eclipse 使用 SVN 插件后改动用户方法汇总
判定 SVN 插件是哪个 JavaH 的处理方法 SVNKit 的处理方法 工具自带改动功能 删除缓存的秘钥文件 其他发表地点 判定 SVN 插件是哪个 常见的 Eclipse SVN 插件我知道的一 ...
- WebLogicSSL解决苹果IOS itms下载问题
前提: 安装好openssl工具. 通过windows cmd 命令进入 openssl工作文件夹 如解压文件夹为:E:\ openssl-1.0.2-beta1 则工作文件夹为E:\openssl- ...
- Squid 启动/停止/重载配置文件 命令
当你的 squid.conf 配置文档按照你的想法修改完以后,启动 squid 之旅就开始了. Squid安装设试命令: 1,初始化你在 squid.conf 里配置的 cache 目录 #/usr/ ...
- TI_DSP_SRIO - package type(包格式)
1.The type of SRIO packageis determined by the combination of Ftype(format type) and Ttype(transacti ...
- Ubuntu下编译Hello World驱动并运行全过程
一般内核驱动都是在实体机上跑的,那有没有方法在ubuntu直接编译并运行呢?带着这个问题在网上查了一些资料,之后就实现了. 运行 hello.c #include<linux/init.h& ...
- Python之内置类型
python有6大内置类型 数字.序列.映射.类.实例.异常. 下面就慢慢来说明: 1.数字 有3个明确的数字类型,整型,浮点型及复数.另外,布尔是整型的一个子类型. (另外标准库还包含额外的数字类型 ...
- python截取搜索引擎关键词
这段代码是自己学了python的基本语法之后,参考一个网上视频写的代码,功能是截取搜索引擎360的关键词. 代码: #!/usr/bin/python #encoding:utf-8 import u ...
- Java编程之路相关书籍(三个维度)
一.关于Java的技术学习.能够依照以下分三个维度进行学习 : (1)向下发展,也就是底层的方向 建议看<深入Java虚拟机>.<Java虚拟机规范>.<Thinking ...
- Java中常用的加密算法MD5,SHA,RSA
1. MD5加密,常用于加密用户名密码,当用户验证时. protected byte[] encrypt(byte[] obj){ try { MessageDigest md5 = Messag ...
- linux centos apache开启gzip的方法
开启gzip压缩的方法很简单,连接服务器并打开配置文件“httpd.conf”,找到下面这两句,去掉前面的“#” 代码如下 1 LoadModule deflate_module modules/m ...