1、第第第第第第2 2 2 2 2 2章章章章章章 C C C C C C语言基础语言基础语言基础语言基础语言基础语言基础2022-5-1722022-5-173main( ) float=* *printf (%fn ,) ; 例例jc2_12022-5-1742022-5-175C数据类型数据类型数组类型数组类型结构体类型结构体类型共用体类型共用体类型枚举类型枚举类型指针类型指针类型构造类型构造类型2022-5-1762022-5-1772022-5-1782022-5-1792022-5-1710 111 1111 1010 1000 作为作为使用时,最高为符号位使用时,最高为符号位为负数,
2、值是:为负数,值是:(再求一次补)(再求一次补) 作为作为使用时,最高为数据位使用时,最高为数据位为无符号的数,值是:为无符号的数,值是:2022-5-1711main( ) unsigned int m; m= ; printf(nm=n,m); printf(m=n,m); 例jc2_a按有符号数输出按有符号数输出按无符号数输出按无符号数输出2022-5-17122022-5-1713小数的符号位小数的符号位指数的符号位指数的符号位2022-5-17142022-5-17152022-5-17162022-5-17172022-5-17182022-5-1719 指数只能是整数,而尾数则可
3、以是整数也可以是指数只能是整数,而尾数则可以是整数也可以是小数小数 ,无论指数或尾数均不能省略,无论指数或尾数均不能省略例如:例如: 非法非法 实型常量的类型:默认为实型常量的类型:默认为型,后面加型,后面加(或或 ),),则强调表示该数是则强调表示该数是float类型类型例如:例如:3.5 、1e2 2022-5-17202022-5-1721字符串字符串结束标记结束标记2022-5-17222022-5-17232022-5-17242022-5-17252022-5-1726int a=3+b,b=5; float m=n=23.16;2022-5-1727例例jc2_32022-5-1
4、7282022-5-17292022-5-17302022-5-17312022-5-17322022-5-17332022-5-1734( ) + - + - * / % + - 同级 同级 同级 2022-5-17352022-5-17362022-5-17372022-5-1738main( ) int a=5; printf(%d %dn,a,a+ ); 运行例运行例2.52022-5-1739main( ) int a=5; printf(%d%dn,a,(a+)+( a+); 运行例运行例2.62022-5-17402022-5-17412022-5-17422022-5-1743
5、2022-5-17442022-5-17452022-5-17462022-5-17472022-5-17482022-5-1749低于单目、算术运算符,低于单目、算术运算符,高于其他运算符高于其他运算符低于单目、算术和关系运低于单目、算术和关系运算符,高于其他运算符算符,高于其他运算符2022-5-17502022-5-1751 main( ) int a=10, b=010; printf(%d %dn, , a|b); printf(%d %dn, ab, ); 输出结果:输出结果:运行运行jc2_b2022-5-1752 main( ) int a=10, b=2; printf(%d
6、 %dn, , ); 输出结果:输出结果:运行运行jc2_c2022-5-1753m=10 & b-20 a b x=3+a5 100 200 2022-5-1754 m=10 & b-20 a b x=3+a5 ? 100 : 200等价于:等价于:(m=10 & b-20) a b等价于:等价于:x= ( 3+a5 ) 100 200 )2022-5-17552022-5-1756 a=5, a+, a* 3 t=1, t+5, t+ x=(a=3*5, a*4 )2022-5-1757int a , student;char ch;2022-5-1758main( ) int a=5; double x; printf(%d %d ,sizeof(),sizeof( ); printf(%d %d ,sizeof(),sizeof( ); printf(%d %dn,sizeof(),sizeof(); 输出结果:输出结果:运行jc2_d2022-5-1759例如有定义:例如有定义:int a; char ch;表达式:表达式:a-ch*2+35La-ch*2+ 35.2022-5-17602022-5-1761