文档介绍:重庆市二级C语言基础知识点总结
第一部分 C语言基础知识
C程序的基本结构
(1)一个C程序由一个或者多个函数构成,有且仅有一个主函数main()。
(2)一个函数由函数的首部和函数体组成。
(3)函数是从主函数(main())开始执行,回到主函数(main())结束;(与main()函数在程序中定义的位置无关)
(4)一个程序的编译是从第一个函数(语句)开始,到最后一个函数(语句)结束;
(5)算法的特性:有穷性,确定性,有一个或者0个输入,有一个或者多个输出;有效性
(6)算法(程序)的几个结构:选择结构,顺序结构,循环结构
用户标识符,由数字,字母,下划线构成,第一个不能是数字(一般会出选择题让你判断哪个标识符定义正确),字母要区分大小写。不能与32个关键字相同。例:P24 第2题P122、2,模拟题第一题
注释符://注释一行;/*和*/注释多行,注释不可以嵌套书写。注释没有任何语法功能。
C语言的基本数据类型
数据类型:分为:基本类型(整型,实型,字符型,枚举型),指针类型,构造类型(结构体类型,数组类型,共用体类型),空类型(空类型合法哦,不要忘记了这个特殊哦)。
基本数据类型
16位编译器
32位编译器
char :1个字节
char :1个字节
char*(即指针变量): 2个字节
char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。)
short int:2个字节
short int : 2个字节
int: 2个字节
int: 4个字节
unsigned int :2个字节
unsigned int : 4个字节
float:4个字节
float: 4个字节
double: 8个字节
double: 8个字节
long: 4个字节
long: 4个字节
long long: 8个字节
long long: 8个字节
unsigned long: 4个字节
unsigned long: 4个字节
一般只需要记int类型是2个字节,float是4个字节,double是8个字节
注意int的最大表示范围是-32768――+32767,当超过这个范围的时候,即以%d输出+32768时结果为-32768
长整型(long)表示方法是在数字后面加L,如果一个变量a=3,那么表示的是一个整型的3,如果是a=3L,那么就是长整型的3;当分别以%o,%ld,%x (8进制,长整型,16进制)输出的时候,结果没有前面的0,0X,和后面的L
例:int a=075,b=ox14;long int c=5L;
printf(“%o,%x,%ld”,a b c); 结果为(75,14,5)
P22第5、11、9题等
转义字符:\n \t \\ \’\”\ddd(1-3位八进制所代表的字符) \xhh(1-2位十六进制所代表的字符) 这个书上习题特别多,P25 第19题,P120第3题,P138第16题P147第14题P152第2题等
sizeof()和strlen():sizeof()测试字符串的存储长度;strlen()测试字符串长度,只计算遇到的第一个\0前面的字符个数。
例:strlen(“abc\089”)=3 strlen(“abc\012”)=4
注意这个例题:char a[30]=“abc\0b”;
sizeof(a)=30 ; sizeof(“abc\0b”)=6;
strlen(a)=3 strlen(“abc\0b”)=3 ;
运算符和表达式:记忆书上附录里的运算符优先级(一定要记住常用的)
(1)算术运算符和算术表达式:注意自增++,自减--,自反-,
++,--,当++,--,在变量后面的时候表示在本次运算的时候不会改变,在下次引用或者参与运算的时候才会自变;当++,--,在变量的前面的时候则是在本次运算就会发生自变(顺便掌握++,--结合性是右结合,若i+++j等价于(i++)+j;
(2)关系运算符:>,<,<=,>=,= =,!= ,==和!=优先级最低。
注意=与==的区别:=是赋值的意思,表达式的值是对变量赋的值,==是关系运算符,关系运算表达式的值为0或者1(关系运算的结果本应是逻辑值,但C语言中没有逻辑数据类型,因此用整型数据来表示关系运算的结果)。
(3)逻辑运算符:&& ,||,!在这几个中优先级!大于&& 大于||,优先级是体现在结合性上而不是运算的先后性上。例如
a=b=c=1;d=++a||++b&&++c
在这个里面&&最高那就是加粗部分先看成一个整体,运算顺序还是从++a开始,即做完这个运算后,可以依次判断出后边的运