变量是用来描述变化的量,常量就是描述不变的量。
常量分为 : 字面常量,const修饰的常变量,#define定义的标识符常量,枚举常量。
1. 字面常量,例如:‘a’,“asdf”,3.14,100
2. const修饰的常变量:例如,如果const int a=10;表明a具有常量属性,就是不可被改变,但是本质上还是个变量。不能充当常量。
补充:int arr[10]={0};在c99之前的语法中数组大小10只能是一个常量,但是在c99之后的标准中增加了一个变常数组的概念,这里指定数组大小的时候,可以使用变量了。
3. #define定义的标识符常量:相当于常量不能更改的
4. 枚举常量enum(枚举关键字)
枚举就是一一列举,枚举是C语言提供的一种自定义类型的方法,例如:性别,只能是男和女,三原色只能是红蓝绿。并且这里的各个枚举常量都是有值的默认为012....。
2.字符串+转移字符+注释 字符串:由双引号引起来的一串字符称为字符串后面会隐藏一个 。字符串是用来初始化数组的例如:
后面的‘ ’是个结束标志,是一个转义字符遇见 表面字符串结束,不算作字符串内容。
拓展:‘ ’
就是一个结束标志,arr1后面会默认带一个 ,上述arr2里面没有遇到 就是没有结束标志,他会一直向后面打印直到遇到 才会停止打印。也可以主动加上。
转义字符| ? | 在书写连续多个问号时使用,防止他们被解析成三字母词 |
| ' | 用于表示字符常量',让他变成一个普通的单引号。 |
| " | 用于表示字符串内部的双引号,让他变成一个普通的双引号。 |
| \ | 用于表示一个反斜杠,防止他被解释为一个转义字符。 |
| a | 警告字符,蜂鸣 |
| b | 退格符 |
| f | 进纸符 |
| n | 换行 |
| r | 回车 |
| t | 水平制表符 |
| v | 垂直制表符 |
| ddd | ddd表示1~3个八进制的数字。如:130 X |
| xdd | dd表示2个十六进制数字。如:x30 0 |
?的作用就是防止多个问号被解析成三字母词。例如:printf((“are you ok??)”);打印出来有可能被翻译成(are you ok]。这是由于??)是个三字母词表示]。但是有的编译器不支持三字母词。
ddd: 例如:130,八进制的130转换从十进制就是88,在ASCII表中88代表大写的X。所以130表示X.
xdd:例如:x30,十六进制中30转换成十进制就是48,在ASCII表中48表示0。所以x30表示0。
拓展:strlenstrlen是个库函数,是用来求字符串的长度(不包含 )。对应的头文件为#include
strlen在遇到 的时候才会停止计算。所以在计算arr2的时候会出现一个随机值,计算时要在后面自己加上一个’ ‘。而arr1后面会默认带一个 。
注释注释是用来解释代码的;
3.选择语句 4.循环语句重复的结构有
1.while循环
2.for语句
3.do while语句
5.函数这里的SUM就是一个函数,自定义创建的函数。在后面提到就可以用,一次封装多次利用。
6.数组数组是一组相同类型的元素的集合。
创建的时候arr[10]这里[ ]里面放的数为arr数组的长度,
在打印的时候这里[ ]里面放的是下标。printf("%d",arr[2]);表示打印下标为2的元素。
| int arr[10] | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 下标 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
在c99之前我们在创建数组的时候不支持变长数组所以 int arr[10];这里[ ]内部的数不能是变量,但是c99之后是支持变长数组的所以[ ]内部可以为变量的。
7.操作符| 算术操作符 | + - * / % (取模的时候两边的数字必须是整数) |
| 移位操作符 | >> <<(移动的是二进制位) |
| 位操作符 | & ^ |(位操作的也是二进制位) |
| 赋值操作符 | = += -= *= &= ^= |= >>= <<= |
+=:的用法是 a+=10; 相当于 a=a+10;一个是给自己加上一个10;一个是a加上10在赋值给a。
-=,*=,/=都是一个意思。
拓展:float类型的数据打印的时候用的是%f
double类型的数据打印的时候用的是%lf
char类型的数据打印的时候用的是%c
short int long longlong类型的数据打印的时候用的是%d



