常量
在程序使用之前已被设置好,在整个程序的运行中不会发生变化
字面常量
字面意思的常量,如3,4,7,abcd…
const修饰的常变量
const int num = 4 num=4不能被改变,这是const的常属性 但num本质上是一个变量
define定义的标识符常量
#define MAX=1000; MAX不能改
枚举常量
用于那些可以一一列举的常量(性别,三原色,血型,月份…) 举例: enum Sex{ Male; //枚举常量 Female; Secret; }; enum Sex s=Male;//枚举类型创建的变量s可以改,但Sex中的常量不能改
字符串
由双引号引起的一串字符。 “hello world” 存储在字符数组中 char arr[] = “hello world” 每个字符串的结尾都隐藏了一个\0的字符,字符串的结束标志是 \0,计算长度时\0不算在内
转义字符
用\来转义其他字符 \n换行 \t水平制表符,类似tab键 \ddd,表示1-3个八进制数,先转换成十进制,再对应ascll码表找到对应字符 例:\132 ——>90——>Z \xdd,表示16进制数,同上 \防止被转义字符转义 printf("%d\n", strlen(“c:\test\329\test.c”)); 14 \t,\32均是一个字符
循环
while循环 执行循环体内的语句直至判断为真 while(判断语句) { }
int main(){
printf("进入大学\n");
while(line<=100000){
line++;
printf("继续努力敲代码");
}
if(line>100000)
printf("走向成功!");
return 0;
}
for循环 do…while循环
函数
库函数/自定义函数 自定义函数: 加法函数Add sum=num1+num2;——> sum=Add(num1,num2); 在主函数外写函数体 Add(int x,int y) { int z=x+y; return z;//返回的z传到sum中 }
数组
数组:一组相同类型元素的集合 int arr[10]; //定义一个存放10个整数的数组 char arr[10]; //定义一个存放10个字符的数组 int arr[10]={1,2,3,4,5,6,7,8,9,10}`
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
printf("%d\n", arr[4]);
操作符
算术操作符
加减乘除:+ - * / 取模(取余) %
移位操作符(二进制位)
左移 >> 右移 << int a=1; int b=a<<1; 1字节=32bit,32位 a:00000000000000000000000000000000 b:0000000000000000000000000000010
位操作符
按位与& 对应二进制位均为1,结果位为1 按位或 | 只要有一个为1,结果位为1 按位异或 ^ 相同为1,不同为0
赋值操作符
= += -= *= /= %= &= |= ^= a=a+1 ——> a+=1
单目操作符
只有一个操作数 !逻辑反操作 ( 在c语言中,0表示假,非0表示真,逻辑反操作) -负值 + 正值 & 取地址 sizeof 计算类或变量大小(单位是字节) ~ 按位取反 (类型)强制类型转换 int a=(int)3.14 将double型转换成整型 ++ - -
int a=2;
int b=++a;
int c=a++;
双目操作符
有两个操作数
关系操作符
< > >= <= == !=(不等于)
逻辑操作符
&& 逻辑与(一个为假都为假:0) || 逻辑或 (一个为真即为真:1)
条件操作符(三目)
表达式1 ? 表达式2 :表达式3 表达式1成立,表达式2计算,结果是:表达式2的结果 表达式1不成立,表达式3计算,结果是:表达式3的结果
逗号表达式
用逗号隔开的表达式,特点是从左到右依次计算
int a=3;
int b=2;
int c=4;
int d=(a=c-1,b=a+2,c=a+b);
printf("%d",d);
函数调用
( )调用函数时函数名后的( ), 如printf("%d",a);
|