[一篇读懂]C语言一讲:数据的类型、数据的输入输出
1. 数据类型-常量-变量(整型-浮点-字符)
1 数据类型
数据类型分类:
关键字:
auto | const | double | float | int | short | struct | unsigned |
---|---|---|---|---|---|---|---|
break | continue | else | for | long | signed | switch | void |
case | default | enum | goto | register | sizeof | typedef | volatile |
char | do | extern | if | return | static | union | while |
2 常量
- 常量指在程序运行过程中,值不发生变化的量。
- 可分为整型、实型(也称浮点型)、字符型和字符串型。
- 整型 - 100,125,-100,0
- 实型 - 3.14,0.125,-3.789
- 字符型 - ‘a’,‘b’,‘2’
- 字符串型 - “a”,“ab”,“1c34”
3 变量
变量名、变量值和存储单元的关系:
- 变量指内存中具有特定属性的一个存储单元,它用来存放数据,即变量的值。
- 这些值在程序的执行过程中是可以改变的。
- 每个变量名分配对应的内存地址(空间)。
- 变量命名规定如下:只能由字母、数字和下划线三种字符组成,并且第一个字符必须为字母或下划线。
例如:
sum,_total,month,Student_name,lotus_1_2_3,BASIC,li_ling
是正确的。
而M.D.John,¥123,3D64,a>b
是错误的。
- 先定义,后使用
- 尽量做到“见名知意”,注意,变量名不能与关键字同名!
4 整型数据
4.1 符号常量
定义整型变量时要使用关键字int:
#include <stdio.h>
#define PI 3+2
int main()
{
int i = PI * 2;
printf("i = %d\n",i);
}
最终输出的结果是7,原因是符号常量PI是直接替换的效果,即3+2*2=7,而不是8。
4.2 整型变量
- 通过int i来定义整型变量,i占用4个字节空间。
5 浮点型数据
5.1 浮点型常量
- 表示浮点型常量的方式有两种,如下所示,其中e代表10的幂次,幂次可正可负。
小数形式 | 指数形式 |
---|---|
0.123 | 3e-3(为 3 × 1 0 − 3 3×10^{-3} 3×10−3,即0.003) |
- 注意,字母e(或E)之前必须有数字,且e后面的指数必须为整数。
正确示例:1e3、1.8e-3、-123e-6、-.1e-3。
错误实例:e3、2.1e3.5、.e3、e。
5.2 浮点型变量
- 通过float f来定义浮点变量,f占用4个字节空间。
6 字符型数据
6.1 字符型变量
- 用单引号括起来的一个字符是字符型常量,且只能包含一个字符! 例如, ‘a’、‘A’、‘1’。
- ’ '是正确的字符型常量。
‘abc’、“a”、" "是错误的字符型常量。
- 转义字符:以“\”开头的特殊字符,转义字符可用来表示回车、退格等功能键。
转义字符 | 作用 |
---|---|
\n | 换行 |
\b | 退格 |
\\ | 反斜杠 |
6.2 字符数据在内存中的存储形式及使用方法
- 字符型变量使用关键字char进行定义,一个字符型变量占用1字节大小的空间。
- 一个字符常量把该字符的ASCII码值放到存储单元中。
- 字符型数据和整型数据之间可以通用。
- 字符型数据既可以以字符形式输出,又可以以整数形式输出,还可以通过运算获取想要的各种字符:
#include <stdio.h>
int main()
{
char c = 'A';