目录
整型
int
- int 为有符号整型,可以使正整数、负整数和零
- 溢出后从最小值重新开始,不会报错
short, long, unsigned
这三个均为附属关键字,各种组合包括
- short int(short)
- long int(long)
- long long int(long long)
- unsigned int(unsigned)
整数的打印
- 使用 printf()
- 转换说明:%d为十进制,%o为八进制,%x为十六进制
- 转换说明:%u 为unsigned,%ld 为long,同理有%lo,%lx
char (字符)
- char 为字符变量,注意不是字符串
- char 声明用单引号’而不是双引号",后者是字符串
- char 只能有1个字符变量,超过后截取最后一个
- 转义序列:
\f
下一页,\n
下一行,\t
下一水平制表点。。。 - 在char中,数字是字符,字符还是字符
_Bool类型
即 true 和 false
浮点型
float 和 double
- float 必须至少能表示6位有效数字,取值范围e-37至e+37
- double最小取值范围与float相同,但至少能表示10位有效数字
- long double,精度至少可double相同,但可以满足更高的精度要求
- 小数点和指数部分不能同时省略
- 小数部分和整数部分不能同时省略
浮点数的打印
%f
十进制的float和double,%e
指数计数法的浮点数
溢出
- 上溢,printf会显示为inf
- 下溢,可以得到结果,但会损失原末尾有效位上的数字
- NaN
复数和虚数
三种复数:
- float _Complex
- double _Complex
- long double _Complex
三种虚数:
- float _Imaginary
- double _Imaginary
- long double _Imaginary
Character String(字符串)
- 字符是基本类型,字符串是派生类型
- 单引号标识单个字符,双引号标识字符串
- 字符串储存在char类型的数组中
- C中的字符串一定以空字符(\0)结束
#include <string.h>
char name[40] //声明字符串
scanf("%s",name) //输入字符串,注意输入字符串不需要在变量名前加&
printf("%s",name) //打印字符串
strlen(name) //字符数,不包括最后的空字符
sizeof(name) //包括最后的空字符
printf("%zd",sizeof(name)) //%zd是sizeof和strlen专门的转换说明
常量
# define TAXERATE 0.015 //方法一:使用预处理器定义常量
const int MONTHS = 12 //方法二:使用const限定符
/*规范使用大写表示符号常量*/
输入输出
转换说明
转换说明 | 输出 |
---|---|
%f | 浮点数,十进制 |
%e | 浮点数,e计数法 |
%d | 有符号十进制整数 |
%u | 无符号十进制整数 |
%c | 字符 |
%s | 字符串 |
转换修饰符
转换修饰符 | 输出 |
---|---|
- | 左对齐 |
+,- | 显示正负号 |
%5.3f 之类的 | 字段宽度5,精度小数点后3位 |
* | 跳过相应输入项 |