㈠ c语言基础知识
•1 C语言程序的结构认识
用一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语言有个初步认识。
例1 计算两个整数之和的c程序:
1、任何一个c语言程序都必须包括以下格式:
这是c语言的基本结构,任何一个程序都必须包含这个机构。括号内可以不写任何内容,那么该程序将不执行任何结果。
2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。
3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。
4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。
5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果:
6、#include
7、程序中以 /*开头并且以*/结尾的部分表示程序的注释部分,注释可以添加在程序的任何位置,为了提高程序的可读性而添加,但计算机在执行主函数内容时完全忽略注释部分,换而言之就是计算机当做注释部分不存在于主函数中。
• 2 C程序的生成过程
C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件,如图所示。
编译过程
• 3 标识符
在编写程序时,必须为函数、变量等命名,这个名字称为标识符。C语言中标识符的命名规则如下:
标识符不能与程序中具有特殊意义的关键字相同,不能与用户编制的函数名、C语言库函数相同,在程序中各种标识符尽量不要重复,以便区分。选择变量名和其他标识符时,应注意做到 “见名知义”。
标识符分为如下三类:
1、关键字
3、用户标识符
用户根据需要自己定义的标识符称为用户标识符。无论如何自定义标识符,都必须符合标识符的三条命名规则。
• 4 常量
在程序运行中,其值不能被改变的量称为常量。常量有5种类型:整型常量、实型常量、字符常量、字符串常量和符号常量。
(一)数值转换
数字的四种表现形式:
在计算机内部,数字均以二进制形式表示和存放,用户输入的普通十进制数字都要被计算机转换成二进制才能在计算机内部存储,同样计算机的运算结果也为二进制,一般要将其转换成十进制数再输出给用户阅读,这种转换通常由计算机自动实现。
(1)将十进制转换二进制、八进制和十六进制
除法:将十进制数除以2,记录余数,得到的商继续除以2,直到商为0,然后将各次相处所得的余数从后往前逆序排列,所得余数数字序列就是该十进制数对应的二进制数。八进制和十六进制转换方法同上。
例:十进制数13转换成二进制数的值为1101,转换八进制为015,转换成十六进制为D.
(2)将二进制、八进制和十六进制转换成十进制
乘积求和:将二进制的每一位从低位到高位(右边为低位,左边为高位)分别乘以20,21,22。。。。,然后将这些积求和。
例如:(1101)2=(13)10 (317)8=(207)10 (23E)16=(574)10
(3)二进制与八进制、十六进制数之间的相互转换
(二)整型常量
整型常量有3种形式:十进制整型常量、八进制整型常量和十六进制整型常量。
书写方式如下:
(三)实型常量
实型常量有两种表示形式:小数形式和指数形式。
(四)字符常量
(2)由一对单引号括起来,以反斜杠\开头,后跟若干数字或者字母,比如‘\n’,其中“\“是转义的意思,后面跟不同的字符表示不同的意思,这类字符常量叫转义字符。具体如图所示 。
(五)字符串常量
C语言中,以双引号括起来的,由若干个字符组成的序列即为字符串常量。
例:“ni hao” “happy”等等。
(六)符号常量
例:计算圆的面积的c程序。
说明:
• 5 变量
变量就是其值可以改变的量。变量要有变量名,在内存中占据一定的存储单元,存储单元里存放的是该变量的值。不同类型的变量其存储单元的大小不同,变量在使用前必须定义。
(一)整型变量
不同的编译系统对上述四种整型数据所占用的位数和数值范围有不同的规定。
类型说明符
说明:
(二)实型变量
C语言中,实型变量分为单精度类型( float )和双精度类型( double )两种。如:
在vc中,float 型数据在内存中占4个字节(32位),double型数据占8个字节。单精度实数提供7位有效数字,双精度实数提供15~16位有效数字。实型常量不分float型和double型,一个实型常量可以赋给一个float 型或double型变量,但变量根据其类型截取实型常量中相应的有效数字。
注意:实型变量只能存放实型值,不能用整型变量存放实型值,也不能用实型变量存放整型值。
(三)字符变量
字符变量用来存放字符常量,定义形式:
char 变量名;
其中关键字char定义字符型数据类型,占用一个字节的存储单元。
将一个字符赋给一个字符变量时,并不是将该字符本身存储到内存中,而是将该字符对应的ASCII码存储到内存单元中。例如,字符 ′A′ 的ASCII码为65,在内存中的存放形式如下:01000001
由于在内存中字符以ASCII码存放,它的存储形式和整数的存储形式类似,所以C语言中字符型数据与整型数据之间可以通用,一个字符能用字符的形式输出,也能用整数的形式输出,字符数据也能进行算术运算,此时相当于对它们的ASCII码进行运算。
•6 类型的自动转换和强制转换
当同一表达式中各数据的类型不同时,编译程序会自动把它们转变成同一类型后再进行计算。转换优先级为:
即左边级别“低“的类型向右边转换。具体地说,若在表达式中优先级最高的数据是double型,则此表达式中的其他数据均被转换成double型,且计算结果也是double型;若在表达式中优先级最高的数据是float型,则此表达式中的其他数据均被转换成float型,且计算结果也是float型。
在做赋值运算时,若赋值号左右两边的类型不同,则赋值号右边的类型向左边的类型转换;当右边的类型高于左边的类型时,则在转换时对右边的数据进行截取。
除自动转换外,还有强制转换,表示形式是:
讨论:当a值赋值为3.4,b值赋值为2.7,(int)(a+b)和(int)a+b的值分别为多少?
• 7 C运算符认识
C语言的运算符范围很广,可分为以下几类:
1、算术运算符:用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(%)、自增(++)、自减(--)共七种。
2、赋值运算符:用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
3、逗号运算符:用于把若干表达式组合成一个表达式(,)。
4、关系运算符:用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种。
5、逻辑运算符:用于逻辑运算。包括与(&&)、或(||)、非(!)三种。
6、条件运算符:这是一个三目运算符,用于条件求值(?:)。
7、位操作运算符:参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。
8、指针运算符:用于取内容(*)和取地址(&)二种运算。
9.、求字节数运算符:用于计算数据类型所占的字节数(sizeof)。
10、特殊运算符:有括号(),下标[],成员(→,.)等几种。
另外,按参与运算的对象个数,C语言运算符可分为:单目运算符 (如 !)、双目运算符 (如+,- )和三目运算符 (如 ? : )。
一、 基本的算术运算符
(1)+(加法运算符或正值运算符,如2+5)。
(2)-(减法运算符或负值运算符,如4-2)。
(3)*(乘法运算符,如3*8)。
(4)/(除法运算符,如11/5)。
/的运算分为两种情况:
(5)%(模运算符或称求余运算符,%两侧均应为整型数据,如9%7的值为2)。
需要说明的是:当运算对象为负数时,所得结果随编译器不同而不同,在vc中,结果的符号与被除数相同,比如:13%-2值为1,而-15%2值为-1.
二、 算术表达式和运算符的优先级与结合性
算术表达式是用算术运算符和括号将运算量(也称操作数)连接起来的、符合C语言语法规则的表达式。运算对象包括函数、常量和变量等。
在计算机语言中,算术表达式的求值规律与数学中的四则运算的规律类似,其运算规则和要求如下。
(1)在算术表达式中,可使用多层圆括号,但括号必须配对。运算时从内层圆括号开始,由内向外依次计算各表达式的值。
(2)在算术表达式中,对于不同优先级的运算符,可按运算符的优先级由高到低进行运算,若表达式中运算符的优先级相同,则按运算符的结合方向进行运算。
(3)如果一个运算符两侧的操作数类型不同,则先利用自动转换或强制类型转换,使两者具有相同类型,然后进行运算。
三、 自增自减运算符
作用:使变量的值增1或减1。
(1)只有变量才能用自增运算符 (++)和自减运算符(--),而常量或表达式不能用,如10++或(x+y)++都是不合法的。
(2)++和--的结合方向是“自右向左“,如 -i++ ,i的左边是负号运算符,右边是自增运算符,负号运算和自增运算都是 “自右向左“结合的,相当于 -(i++)。
在循环语句中常用到自增(减)运算符,在指针中也常用到该运算符,考生要弄清楚“i++”和“++i”及“i--”和“--i”的区别,特别弄清楚表达式的值和变量的值。
例:变量n的初始值为2,则
例:有以下程序
程序运行后的输出结果是_____
A.12 35 13 35 14 36 B. 12 35 14 35 14 36
C.12 35 14 36 14 36 D. 12 35 14 35 14 35
解析:自增自减运算需要注意区分表达式的值和变量的值,表达式运算后,变量会自增自减运算,表达式和变量变化如下:
•9 赋值运算符与赋值表达式
一、赋值运算符与赋值表达式
赋值符号 “=“就是赋值运算符,作用是将一个数据赋给一个变量或将一个变量的值赋给另一个变量,由赋值运算符组成的表达式称为赋值表达式。一般形式为:
变量名 = 表达式
在程序中可以多次给一个变量赋值,每赋一次值,与它相应的存储单元中的数据就被更新一次,内存中当前的数据就是最后一次所赋值的那个数据。
说明:
a、如果赋值号两边的运算对象类型不一致,系统会自动进行类型转换,转换的规则:将赋值号右边表达式的值的类型转换成赋值号左边变量的类型,
b、 可以将复制表达式的值再赋值给变量,形成连续赋值。
二、复合的赋值运算符
在赋值运算符之前加上其他运算符可以构成复合赋值运算符。其中与算术运算有关的复合运算符是:+=,-=,*=,/=,%= 。
两个符号之间不可以有空格,复合赋值运算符的优先级与赋值运算符的相同。表达式n+=1等价于n=n+1,作用是取变量n中的值增1再赋给变量n,其他复合的赋值运算符的运算规则依次类推。
如求表达a+=a-=a*a 的值,其中a的初值为12 。
步骤:
•10 逗号运算符和逗号表达式
在c语言中,逗号除了作为分隔符,还可以用作一种运算符----逗号运算符,用逗号运算符将几个表达式连接起来,例如a=b+c,a=b*c等称为逗号表达式。
一般形式为:
表达式1 ,表达式2 ,表达式3 , …,表达式n
例:x=2,y=3,z=4
逗号表达式具有从左至右的结合性,即先求解表达式1,然后依次求解表达式2,直到表达式n的值。表达式n的值就是整个逗号表达式的值。上述的逗号表达式的值就是表达式z=4的值4.需要注意的是,逗号运算符是所有运算符中级别最低的。
例:有如下程序段:
程序显示结果为:y=6,x=6
讨论:将y=(x=a+b),(b+c);改为y=((x=a+b),b+c) 的程序结果?
• 11 关系运算符和关系表达式
一、 C语言中的逻辑值
C语言中的逻辑值只有两个:真(true)和假(flase)。用非零代表真,用零代表假。因此,对于任意一个表达式,如果它的值为零,就代表一个假值,如果它的值为非零,就代表一个真值。只要值不是零,不管是正数,负数,整数,实数,都代表一个真值。例如-5的逻辑值为真。
二、 关系运算符及其优先次序
C语言提供了6种关系运算符,见表
由两个字符组成的运算符之间不可以加空格,关系运算符都是双目运算符。
(1)结合性:自左向右。
(2)优先次序:前4种关系运算符( <,<=,>=,> )的优先级别相同,后两种 (==,!=)优先级相同,且前4种优先级高于后两种;关系运算符的优先级低于算术运算符,高于赋值运算符。
三、 关系表达式
由关系运算符连接而成的表达式称为关系表达式。
例如:a>b,(a=7)>(b=10)等都是合法的关系表达式。
关系表达式的结果有两个:0和1,。其中0表示假,1表示真。如果关系表达式成立,则值为真,如果关系表达式不成立,则值为假。
例:变量a的值为5,b的值为6,那么关系表达式a>b的值为假,即为0.而关系表达式
(a=13)>(b=10)的值为真,即为1。
当关系运算符两边值的类型不一致时,若一边是整型,一边是实型,系统将自动把整型数转化为实型数,然后再进行比较。
•12 逻辑运算符和逻辑表达式
一、 逻辑运算符及其优先级
C语言提供了3种逻辑运算符,如下表。
二、 逻辑表达式
“&&”和“||”的运算对象有两个,故它们都是双目运算符,而!的运算对象只有一个,因此它是单目运算符。逻辑运算举例如下:
(1)a&&b: 当&&两边都为“真”时,表达式a&&b的值才是真。
值得注意的是:在数学中,关系式0
(2)a||b: 当||两边有一个为“真”时,表达式a||b的值就是真。
(3)!a: 表示取反,如果a为真,则!A为假,反之亦然。例如!-5的值就为0.
在C语言中,由&&或||组成的逻辑表达式,在某些特定情况下会产生“短路“现象。
(1)x && y && z ,只有当x为真(非0)时,才需要判别y的值;只有x和y都为真时,才需要去判别z的值;只要x为假就不必判别y和z,整个表达式的值为0。口诀:“一假必假”。
例:(!5==1)&&(++i==0) (!5==1)表达式的值为0,所以计算机运行中就跳过(++i==0)此表达式,(!5==1)&&(++i==0)表达式的值为0.
(2)x||y||z ,只要x的值为真(非零),就不必判别y和z的值,整个表达式的值为1,只有x的值为假,才需要判别y的值,只有x和y的值同时为假才需要判别z的值,口诀:“一真必真”。
•13 位运算
一、 位运算符
在计算机中,数据都是以二进制数形式存放的,位运算就是指对存储单元中二进制位的运算。C语言提供6种位运算符。
二、位运算
位运算符 & |~<< >> ∧ 按优先级从高到低排列的顺序是:
位运算符中求反运算“~“优先级最高,而左移和右移相同,居于第二,接下来的顺序是按位与 “&“、按位异或 “∧“和按位或 “|“。顺序为~ << >> & ∧ | 。
例1左移运算符“<<”是双目运算符。其功能把“<< ”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0。
例 2右移运算符“>>”是双目运算符。其功能是把“>> ”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。
应该说明的是,对于有符号数,在右移时,符号位将随同移动。当为正数时,最高位补0,而为负数时,符号位为1,最高位是补0或是补1 取决于编译系统的规定。
例 3 设二进制数a是00101101 ,若通过异或运算a∧b 使a的高4位取反,低4位不变,则二进制数b是。
解析:异或运算常用来使特定位翻转,只要使需翻转的位与1进行异或操作就可以了,因为原数中值为1的位与1进行异或运算得0 ,原数中值为0的位与1进行异或运算结果得1。而与0进行异或的位将保持原值。异或运算还可用来交换两个值,不用临时变量。
所以本题的答案为: 11110000 。
㈡ c语言标识符命名规则是什么
C语言的标识符一般应遵循如下的命名规则:
1、标识符必须以字母a~z、A~Z或下划线开头,后面可跟任意个(可为0)字符,这些字符可以是字母、下划线和数字,其他字符不允许出现在标识符中。
2、标识符区分大小写字母。
3、标识符的长度,c89规定31个字符以内,c99规定63个字符以内。
4、C语言中的关键字,有特殊意义,不能作为标识符。
5、自定义标识符最好取具有一定意义的字符串,便于记忆和理解。
常见命名规则
比较着名的命名规则,首推匈牙利命名法。这种命名方法,是由Microsoft程序员查尔斯·西蒙尼(Charles Simonyi)提出的。其主要思想是“在变量和函数名中加入前缀,以增进人们对程序的理解”。
匈牙利命名法关键是:标识符的名字,以一个或多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。例如:lpszStr,表示指向一个以\0结尾字符串(sz)的长指针(1p)变量。
㈢ c语言中"结构化程序设计方法”的基本思想和规则
C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。
C源程序的结构特点
1.一个C语言源程序可以由一个或多个源文件组成。
2.每个源文件可由一个或多个函数组成。
3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。
4.源程序中可以有预处理命令(include
命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。
5.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。
6.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
书写程序时应遵循的规则
从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时
应遵循以下规则:
1.一个说明或一个语句占一行。
2.用{}
括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
3.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
㈣ 在C语言中,自定义标识符的规则有哪些
在C语言中,自定义标识符的规则有:
1、第一个字符必须是字母(不分大小写)或下划线(_);
2、后跟字母(不分大小写)、下划线(_)或数字组成;
3、标识符中的大小写字母有区别。如,变量sum,sum,sum代表三个不同的变量;
4、不能与c编译系统已经预定义的、具有特殊用途的保留标识符(即关键字)同名。比如,不能将标识符命名为float,auto,break,case,this,try,for,while,int,char,short,unsigned等等。
(4)c语言基本规则扩展阅读:
在程序设计语言中,标识符是用作程序的某一元素的名字的字符串或用来标识源程序中某个对象的名字的 。这个元素可以是一个语句标号,一个过程或函数、一个数据元素(例如一个标量变量或一个数组)或程序本身。最通常是,标识符这个字几乎与变量名同义地使用。
㈤ C语言的书写规则主要有哪些呢
从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时
应遵循以下规则:
1.一个说明或一个语句占一行。
2.用{}
括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
3.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
有空格的地方就可以换行!
if(
a
==
b
&&
e
==
c
){}
和
if(
a
==
b
&&
e
==
c
)
{
}
是完全一样的
㈥ c语言数组规则
1.1 一维数组的定义、初始化和引用
1.一维数组的定义方式为:
类型说明符 数组名[常量表达式]
(1)数组名的命名方法与变量名相同,遵循标识符命名规则;
(2)数组是用方括号括起来的常量表达式,不能用圆括号;
(3)常量表达式表示数组元素的个数,即数组的长度,数组的下标从0开始,下标的最大值为:常量表达式-1;
(4)常量表达式中可以包括常量和符号常量,不能包括变量。
可以用赋值语句或输入语句使数组中的元素得到值,但要占用运行时间。可以使数组在运行之前初始化,即在编译阶段使之得到初值。
2.对数组初始化可以用以下方法实现:
(1)在定义数组时对数组元素赋以初值。如:
static int a[10]={0,1,2,3,4,5,6,7,8,9};
经过上面的定义和初始化后,a[0]=0,a[1]=1,…,a[9]=9。
(2)初始化时可以只对一部分元素赋初值。例如:
static int a[10]={0,1,2,3,4};
定义的数组有10个元素,但只对其中前5个元素赋了初值,后5个元素初值为0。
(3)如果想使一个数组的元素值全部为0,可以用下面的方法:
static int a[10]={0,0,0,0,0,0,0,0,0,0};
不能用:
static int a[10]={0*10};
如果对static型数组不赋初值,系统会对定义的所有数组元素自动赋以0值。
(4)在对全部数组元素赋初值时,可以不指定数组长度。
3.一维数组的引用方法是:
C语言规定不能一次引用整个数组,引用时只能逐个元素引用,数组元素的表示形式为:
数组名[下标]
下标可以是整型常量或整型表达式。如:
a[0]=a[5]+a[7]-a[2*3];
㈦ C语言基础知识点
C语言基础知识点集锦
【知识点1】C程序
C语言程序结构有三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch)
【知识点2】main函数
每个C语言程序中main 函数是有且只有一个。读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
【知识点3】存储形式
计算机的数据在电脑中是以二进制的形式保存。最低的存储单元是bit(位),位是由为 0 或者1构成。 byte 是指字节, 一个字节 = 八个位。数据存放的位置就是它的地址。
【知识点4】注释
是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。
【知识点5】书写格式
每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。
【知识点6】标识符
合法的用户标识符考查:
合法的要求是由字母,数字,下划线组成。有其它元素就错了。
并且第一个必须为字母或则是下划线。第一个为数字就错了。
C语言标识符分如下3类
(1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。
(2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。
(3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。
关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If 是可以做为用户标识符。因为If 中的第一个字母大写了,所以不是关键字。
【知识点7】实型数据
实型数据的.合法形式:小数形式和指数形式。掌握判定指数形式合法性。
2.333e-1 就是合法的,且数据是2.333×10-1。
【知识点8】字符
字符数据的合法形式::
1 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
0 的ASCII 数值表示为48,a 的ASCII 数值是97,A的ASCII 数值是65。
字符型和整数是近亲:
char a = 65 ;
printf(“%c”, a); 得到的输出结果:a
printf(“%d”, a); 得到的输出结果:65
一般考试表示单个字符错误的形式:65 "1"
字符是可以进行算术运算的,记住: 0-0=48
大写字母和小写字母转换的方法: A+32=a 相互之间一般是相差32。
【知识点9】整型数据
整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节:
考试时候一般会说,在16 位编译系统,或者是32 位系统。碰到这种情况,不要去管,
一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节就可以了。
【知识点10】转义字符
转义字符的考查:
在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x 必须存在。
在程序中 int a = 06d, 是一个八进制的形式。
在转义字符中, ’x6d’ 才是合法的,0 不能写,并且x 是小写。
‘141’ 是合法的, 0 是不能写的。
‘108’是非法的,因为不可以出现8。
【知识点11】算术运算
算术运算符一共有+、—、*、/、%这五个。%符号两边要求是整数。不是整数就错了。
三种取整丢小数的情况:不是四舍五入是舍掉小数部分。
1、int a =1.6;
2、(int)a;
3、1/2; 3/2;
【知识点12】强制类型转换
将一个运算对象转换成指定类型,格式为(类型名)表达式
一定是 (int)a 不是 int(a),注意类型上一定有括号的。
注意(int)(a+b) 和(int)a+b 的区别。前是把a+b 转型,后是把a 转型再加b。
【知识点13】赋值
是表达式就一定有数值。
赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。
复合赋值运算符:注意:a*=m+2 是 a=a*(m+2)
自加、自减表达式:假设a=5,++a(表达式的值为6), a++(表达式的值为5);
j=a++;等价于j=a;a=a+1; 而j=++a;等价于a=a+1;j=a;。
考试口诀:++在前先加后用,++在后先用后加。
【知识点14】逗号运算
逗号表达式:优先级别最低; 表达式的数值逗号最右边的那个表达式的数值。
(2,3,4)的表达式的数值就是4。
【知识点15】数制转换
一定要记住二进制 如何转换成十进制。
八进制是没有8 的,逢8 进1,018 的数值是非法的。