C-代码笔记-输入输出
.ACSII 字符实质和整数存储方式相同 //2018年9月16日01:35:54 # include <stdio.h>
int main(void)
{
char ch = '';
// printf("%c\n", ch);
printf("%d\n", ch); //ASCII码规定字符A以65的整数值表示,字符0以48储存。
return ;
}
.ASCII char使用的常见问题 # include <stdio.h>
int main(void)
{
char ch = 'a' ; // ok 定义ch
// char ch = "ab"; //error 因为"ab"是字符串,不能把字符串赋给单个字符
// char ch = "a" ; //error
// char c = 'ab'; //error vc6 可以
// char ch = 'b' ; //error 因为ch变量已经在第四行被定义
ch = 'c'; // ok 赋值ch
printf("%c\n",ch); return ;
}
.printf 用法 // 2018年9月16日01:32:16
/*
# include <stdio.h> int main(void)
{
int i = 33; printf("i = %#X\n", i); return 0;
}
*/
# include <stdio.h> int main(void)
{
char i = ''; printf("i = %d\n", i); return ;
}
.printf中%X及其相关的用法 /*
2018年9月15日13:17:25
功能: 目的:
测试%x %X %#X %#x的用法
*/
# include <stdio.h>
int main(void)
{
int x = ; //100是十进制
printf("%x\n",x); //输出结果是:2f
printf("%X\n",x); //输出结果是:2F
printf("%#X\n",x); //输出结果是:0X2X %#X推荐使用
printf("%#x\n",x); //输出结果是:0x2f return ;
}
/*
在Vc++6.0中输出的结果是:
----------------------------
2f
2F
0X2F
0x2f
----------------------------
总结: */
.scanf 用法 //2018年9月16日01:54:38 # include <stdio.h> int main(void)
{
int i; //scanf("%d, &i"); // error
scanf("%d", &i); //&i 表示i的地址 &是一个取地址的符号
printf("i = %d\n", i); return ;
}
.scanf 用法 含非输入控制符 //2018年9月18日02:40:52 # include <stdio.h> int main(void)
{
int i; scanf("m%d", &i); //m123 正确输入 123 非法的输入 m123n输出 123
printf("i = %d\n",i); return ;
}
.scanf 一次给多个变量键盘赋值 # include <stdio.h> int main(void)
{
int i, j, k; /*
scanf("%d %d", &i, &j);
// printf("i = %d\n j = %d\n", i, j); //--ok
// printf("i = %d\n, j = %d\n", i, j); //--ok
// printf("i = %d\nj = %d\n", i, j); //--ok
// printf("i = %dj = %d\n", i, j); //--ok
// printf("i = %d j = %d\n", i, j); //--ok
printf("i = %d, j = %d\n", i, j); //--ok
*/
/*
// scanf("%d, %d", &i, &j); //--ok
// scanf("%d,%d", &i, &j); //--ok
scanf("%d ,%d", &i, &j); //--ok 需要在第二个输出参数钱加 , printf("i = %d, j = %d\n", i, j);
*/
/*
scanf("%d , %d", &i, &j); //--ok 空格不管多少只计为一个
printf("i = %d, j = %d\n", i, j);
*/
/* printf("请输入三个值中间用逗号隔开:");
scanf("%d,%d,%d", &i, &j, &k);
printf("i = %d, j = %d, k = %d\n", i, j, k);
*/
scanf("%d%d%d", &i, &j, &k);
printf("i = %d, j = %d, k = %d\n", i, j, k); return ;
}
.scanf对用户非法输入的处理 //2018年9月19日00:14:30
# include <stdio.h> int main(void)
{
int i;
char ch; scanf("%d", &i);
printf("i = %d\n", i); //...
while ((ch = getchar()) != '\n') //! 后面不能有空格
continue;
int j;
scanf("%d", &j);
printf("j = %d\n", j); return ;
}
/*
在Vc++6.0中输出的结果是:
----------------------------
1m
i = 1
2
j = 2
Press any key to continue
----------------------------
*/
C-代码笔记-输入输出的更多相关文章
- 【hadoop代码笔记】Mapreduce shuffle过程之Map输出过程
一.概要描述 shuffle是MapReduce的一个核心过程,因此没有在前面的MapReduce作业提交的过程中描述,而是单独拿出来比较详细的描述. 根据官方的流程图示如下: 本篇文章中只是想尝试从 ...
- 【hadoop代码笔记】hadoop作业提交之汇总
一.概述 在本篇博文中,试图通过代码了解hadoop job执行的整个流程.即用户提交的mapreduce的jar文件.输入提交到hadoop的集群,并在集群中运行.重点在代码的角度描述整个流程,有些 ...
- 【Hadoop代码笔记】目录
整理09年时候做的Hadoop的代码笔记. 开始. [Hadoop代码笔记]Hadoop作业提交之客户端作业提交 [Hadoop代码笔记]通过JobClient对Jobtracker的调用看详细了解H ...
- <Python Text Processing with NLTK 2.0 Cookbook>代码笔记
如下是<Python Text Processing with NLTK 2.0 Cookbook>一书部分章节的代码笔记. Tokenizing text into sentences ...
- [学习笔记] SSD代码笔记 + EifficientNet backbone 练习
SSD代码笔记 + EifficientNet backbone 练习 ssd代码完全ok了,然后用最近性能和速度都非常牛的Eifficient Net做backbone设计了自己的TinySSD网络 ...
- DW网页代码笔记
DW网页代码笔记 1.样式. class 插入类样式 标签技术(html)解决页面的内容样式技术(css)解决页面的外观脚本技术 解决页面动态交互问题<form> ...
- 前端学习:JS(面向对象)代码笔记
前端学习:JS(面向对象)代码笔记 前端学习:JS面向对象知识学习(图解) 创建类和对象 创建对象方式1调用Object函数 <body> </body> <script ...
- 【代码笔记】Java文件的输入输出(1)——Java.io包的初步理解
Java里面文件的输入输出全部在java.io包里面. Java.io包里面所有的类都需要掌握. java.io包里面所有的东西都在上面了. 包里面的相关类.异常等树关系如下 类分层结构 java.l ...
- 【代码笔记】Java连连看项目的实现(2)——JTable 、TableModel的使用
博客有时间就写写,所以一篇可能会拆成很多篇,写完后计划再合在一起. 首先肯定是要实现连连看的界面. 先准备连连看要的图片.. “LianLianKan”就是项目名称. 当然,如果小白看我的博客想学到什 ...
- 资源 | 数十种TensorFlow实现案例汇集:代码+笔记
选自 Github 机器之心编译 参与:吴攀.李亚洲 这是使用 TensorFlow 实现流行的机器学习算法的教程汇集.本汇集的目标是让读者可以轻松通过案例深入 TensorFlow. 这些案例适合那 ...
随机推荐
- Git的gc功能
http://blog.csdn.net/lihuanshuai/article/details/37345565 Git的底层并没有采用 CVS.SVN 底层所采用的那套增量式文件系统,而是采用一套 ...
- little kernel 小结
其实几篇文章都是摘自freebuf安全的文章: 高通(Qualcomm)LK源码深度分析 高通(Qualcomm)LK源码深度分析(二) 高通(Qualcomm)LK源码深度分析(三) 将其整理为比较 ...
- C# 动态方法和静态方法的区别
C# 动态方法和静态方法的区别 (转) 动态方法与静态方法的区别: 1,使用方法上的区别:动态方法,在使用时需要先创建实例,才能调用实例方法,而静态方法则不需要,直接使用即可. 示例代码如下:静态方法 ...
- Python进阶(一)
完成慕课网的python基础学习以后,大约花了三天时间,平均每天一个小时,总结了一些比较好的例题和思想方法,下面来学习python进阶吧 参考廖雪峰官方课程 函数 python官方函数调用文档 定义默 ...
- CefSharp的一些初始化操作
if (!CefSharp.Cef.IsInitialized) { var setting = new CefSharp.CefSettings { Locale = "zh-CN&quo ...
- Scala 上下文界定
上下文界定的类型参数形式为T:M的形式,其中M是一个泛型,这种形式要求存在一个M[T]类型的隐式值: /** * 上下文界定 */ @Test def testOrdering_Class_Conte ...
- 【转】抓包工具Fiddler的使用教程(十二)下:Fiddler抓取HTTPS
在教程十二(上),我们也了解了HTTPS协议,该教程就和大家分享Fiddler如何抓取HTTPS 抓包工具Fiddler的使用教程(十二):[转载]HTTPS协议 再次回忆一下关键内容: iddler ...
- mha高可用以及读写分离
一.MHA简介 二.工作流程 三.MHA架构图 四.MHA工具介绍 五.基于GTID的主从复制 六.部署MHA 七.配置VIP漂移 八.配置binlog-server 九.MySQL中间件Atlas ...
- 启动Myeclipse报错“Failed to create the Java Virtual Machine”的解决办法
我安装的是Myeclipse 10.7.1.装上好久没用,今天启动突然报错:Failed to create the Java Virtual Machine. 检查Myeclipse安装好使用时好的 ...
- ethereum/EIPs-607 Hardfork Meta: Spurious Dragon硬分叉相关
eip title author type status created requires 607 Hardfork Meta: Spurious Dragon Alex Beregszaszi Me ...