黑马程序员——黑苹果的日记(4)——基础知识(2)
2015-08-18 11:58
405 查看
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
一 printf函数的介绍
printf("%d,%d",a,b);
原格式:% - 0 m.n l或h 格式字符
%s:例如:printf("%s", "nihao")输出"nihao"字符串(不包括双引号)。
%f:不指定宽度,整数部分全部输出并输出6位小数。
%.7f:是指输出此数据的时候,小数点之后要显示7位数字
(如果小数点前还有一些非零数位,那么小数点后的这7位并不能保证都是精确可信的有效数位)
二 scanf函数
1 scanf函数原型包含在标准输入输出头文件“stdio.h”中,用于接受键盘输入的内容。
格式:scanf("格式控制字符串",输入项地址列表);
%d
输入一个十进制整数
%c
输入一个字符
%s
输入一个字符串
%f
输入一个小数形式或指数形式的浮点数
2 注意事项
1)如果在输入时,输入了多个空格、回车、Tab都会被系统忽略的。
2)如果要获取的内容是多个整数,中间输入了多个空格、回车、Tab都会被系统忽略
3)非法的格式输入无效显示
三运算符
1定义:运算符是告诉编译程序执行特定算术或逻辑操作的符号。
2分类
2.1功能划分:
算术运算符、 关系运算符与逻辑运算符、按位运算符。
2.2参与运算的操作数的个数分为:
单目运算、双目运算、三目运算

3运算符的优先级
关于运算符口诀:
初等单双目,关系逻辑忙,条件赋逗号,牢记心不慌。
注意:取余运算符的正负只和第一个运算数字有关和后面的无关
4算术运算符的类型转化问题
主要分为隐式类型转化和显式类型转换
4.1强制类型转换是通过类型转换运算来实现的。
其一般形式为: (类型说明符) (表达式)
其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。
(float) a;
上面把a转换为实型
(int)(x+y);
上面把x+y的结果转换为整型
4.2隐式类型转换
首先是优先级是 double> long >unsigned> int> char和short
左边的高
运算时会转换为优先级高的来运算,当赋值时,右边类型的优先级高,并且左边的数字长度达的部分会四舍五入的舍去
当char和short运算时,会都转化为Int类型在运算
5结合性(在上表中也提到)
分为左结合性和右结合性
比如=,x=y=z;要先执行y=z,再执行x=y.
6赋值运算符
6.1表达式的概念:用运算符号按一定的规则连接起来的、有意义 的式子称为表达式。
6.2分类:算术表达式、逻辑表达式和字符串表达式。
6.3赋值运算符的表达式一般为 变量=表达式
6.4赋值运算符具有右结合性
6.5赋值语句:赋值表达式加上分号就成了赋值语句
7复合赋值运算符
在赋值符“=”之前加上其它二目运算符可构成复合赋值符。
注意:赋值运算符优先级排名14位,仅仅高于“,”运算符。
右结合性
8自增自减运算符
8.1位于优先级第二级,是单目运算符,结合性为右
8.2关于a++和++a的关系
变量的值和表达式的值,当a++时,变量的值为a+1而表达式的值为a。而++a则没有这种情况
例如
int a=4;
a++; //变量a的值为5,表达式的值为4
printf("%d",a);
int a=4;
++a; //变量a的值为5,表达式的值为5
printf("%d",a);
自增自减不能用于表达式或常量只可用于单个变量。
9 sizeof 的使用方法
一种单目运算符,sizeof操作符以字节形式给 出了其操作数的存储大小。
用法:sizeof(常量/变量)
如sizeof(1.2)
sizeof(char)
用于变量如sizeof(a)
10逗号运算符
其功能是把两个表达式连接起来组成一个表达式, 称为逗号表达式。
其一般形式为:表达式1, 表达式2
并不是在所有出现逗号的地方都组成逗号表达式,如在变量说明中,函数参数表中逗号只是用 作各变量之间的间隔符
11关系运算符
比较两个量的运算符称为关系运算符。
c中所有数值都有真假性,关系运算符返回值只有两个要么是真(1) 要么是假(0)
关系运算符是双目运算符,优先级低于算数运算符高于赋值运算符。结合性为左结合。
12逻辑运算符
&&(与运算)
||(或运算)
!(非运算)
12.1逻辑表达式的一般形式为:
表达式 逻辑运算符 表达式
c中非零就是真,0就是假。
12.2其为双目运算符,&&和||具有左结合性。!具有右结合性。
! >算术运算符 > 关系运算符 > &&和|| > 赋值运算符
13三目运算符
13.1三目运算符(条件运算符)为?和:,它是一个三目运算符,即有三个操作数参与运算的量。
13.2由条件运算符组成条件表达式的一般形式为:
表达式1? 表达式2: 表达式3
注意:条件运算符的运算优先级低于关系运算符和算术运算符,但高于赋值符, 条件运算符的结合方向是自右至左。
相关文章推荐
- 黑马程序员——其他对象
- 全面解读java虚拟机(面试考点大全)d
- 程序员的自我修养-读书笔记(1)
- 职场奇葩说:不得不了解的11个奇葩现象
- 剑指offer-第四章解决面试题思路(判断一个数组是否为二叉搜索树的后序遍历序列)
- 一个启发式程序员的思考
- 什么样的程序员最易涨薪?
- 100分程序员的8个习惯
- 某搜索公司面试 待续
- 常用网站(程序员必备)
- 创建SQL语句_面试
- 程序员必须掌握的十种算法---Dijkstra算法
- 黑马程序员_面向对象(2)
- 码农回忆刚毕业工作的那年
- ssh面试题
- 十道海量数据处理面试题与十个方法大总结
- 转:40个Java集合面试问题和答案
- 程序员十层楼
- 程序员编程艺术:第三章续、Top K算法问题的实现
- 黑马程序员-----Java基础-----Collection-list