> 笔记借鉴谭浩强教授编著的《C程序设计第五版》,想看更详细的知识,可观看此书,这仅是我的学习心得,不足之处可以留言,在下感激不尽!
1、运算符:
(1)算术运算符(+ - * / % ++ --)
(2)关系运算符(> < == <= >= !=)
(3)逻辑运算符(! && ||)
(4)位运算( << >> ~ | ^ &)
(5)赋值运算符(=及其扩展赋值运算符)
(6)条件运算符(?:)
(7)逗号运算符(,)
(8)指针运算符(* &)
(9)求字节运算符(sizeof)
(10)强制类型转换运算符((类型))Ps:相关格式说明请看C语言笔记之顺序程序篇(一)
(11)成员运算符(. ->)
(12)下标运算符([ ])
(13)其他(如函数调用运算符())
2、基本的算术运算符这篇文章介绍很全面
(1)在使用/运算符时,大多数多数编译系统采取‘向零靠拢’的方法。
//-5/3=-1;5/3=1;只保留整数部分,没有四舍五入。
//%运算符要求,运算对象(操作数)必须为整数,结果也是整数。
//除%以外,其他运算符的操作数可以是任何对象。
(2)自增,自减运算符
++i,--i(在使用i之前,先运算,再使i的值加或减1)
i++,i--(在使用i之后,使i值加或减1,再运算)
3、运算符的优先级与结合性:先判断优先级,优先级相同再考虑结合性
除以下自右至左,其他皆为自左向右(左结合性)
赋值运算符
!~ ++(自增)--(自减) -(负号)(类型)* & sizeof
条件运算符
优先级:
初等运算符( );[ ];->;>单目运算符>算术运算符>算术运算符>关系运算符>逻辑运算符(不包括!)>条件运算符>赋值运算符>逗号运算符
//条件运算符是C语言唯一三目运算符;x?a:b
4、不同类型数据间的混合运算
(1)+ - * /运算的两个数中有一个数为float或double型,结果是double型
(2)int和float型运算结果还是运算double型
(3)char 与整型数据进行运算,结果为整型
(4)char与实数进行运算,结果为double
//以上均是系统自动完成
5、C语句
一个C语句经过编译后会产生若干条机器指令,声明部分不产生机器指令。
分类:
(1)控制语句:
if()...else
for()...
while()...
do...while()
continue
break
switch
return
goto
//后面会专门讲这8个函数(goto除外)
(2)函数调用语句:由一个函数调用加一个分号构成;
(3)表达式语句:表达式语句由一个表达式和一个分号构成。赋值表达式
//一个表达式的最后加一个分号就成了一个语句。
(4)空语句:作用可以作为循环函数转向点
(5)复合语句:把用{ }包括的语句和声明括在一起称为复合语句
6、最基本的语句-赋值运算符
(1)格式 变量 赋值运算符 表达式
(2)赋值运算符可以作为表达式的形式出现在其他语句中。
(3)赋值过程中的类型转换
1)float赋值给int时,先对浮点数取整,舍弃小数部分,然后赋值给整型变量
2)int赋值给float时,小数点后面加0
3)总的来说就是每个类型储存空间(位、字节)之间的赋值
(4)对于几个不同变量赋值相同值不能用连续赋值表示。x=y=z=1;不合法语句
7、数据的输入输出
输入输出应该注意:
(1)所谓输入输出是以计算机主机为主体而言的。
(2)C语言本身不提供输入输出语句。
(3)要在程序文件的开头用预处理指令#include把有关头文件放在本程序中。
//#include<stdio.h>标准方式
(4)scanf中逗号后面是一个地变量址,scanf格式控制中,上面写什么,输入数据就必须原样写入
//scanf("a=%d",&x);输入数据时就必须写上a=,其中逗号要尤其注意。
(5)printf中%-7.2f表示指定数据占7列,其中小数部分占2列,数据向左对齐,右端补空格
(6)字符输入输出函数有putchar和getcahr只能输入输出一个字符。
//putchar可以输出字符常量。整型常量。字符变量或整型变量(ASCII范围内)
//getchar输入字符结束后需要按Enter键
//在由多个getchar的语句中,正常输入情况下(输入范围之内)Enter也可以算一个字符。