1.字面常量: 指的是直接输入到程序中的值 比如:in myAge=26; myAge是一个int类型变量,而26是一个字面常量
2.const常量:具有常属性,用来修饰常变量,列子中的num本质依然是变量
int main(){
const int num =4;//(此条语句中num相当于常量)
printf("%d",num);
int num=8; // (不可改变值)
printf("%d",num);
return 0;
}
3.#define定义的标识符常量
#define MAX 10
{
int arr[MAX]={0};
}
其中MAX的值就是10
4.枚举变量
关键词enum
enum sex
{
MALE, (0)
FEMALE (1)[其中列举的变量都有一个数值,从0开始]
};
int main(){
enum sex s = MALE; (其中的s是一个变量eg:enum Color color = RED;)
printf("%d",MALE); (结果为0)
return 0;
}
5.字符串
是由””双引号引起”1234”,”abcd”,””(空字符串)
字符串结束的标志\0,字符串自带一个\0
int main(){
char arr1[]=”abc”;
char arr2[]={’a’,’b’,’c’};
printf(“%s\n”,arr1); //结果为(abc) (‘\0’等同于0)
printf(“%s\n”,arr2); //(abc加一些乱码)要将其改成char arr2[]={‘a’,’b’,’c’,’\0’或0};
return 0;
}
int main(){
char arr1[]=”abc”;
char arr2[]={‘a’,’b’,’c’};
printf(“%d\n”,strlen(arr1)); //结果为(3)
printf(“%d\n”,strlen(arr2));//arr2的结果其实是随机的,因为在arr2中排在字符串abc后的字符也是随机的,不一定那个位置
return 0; //strlen(string lenth)/是\0,只有遇见\0,此次的计算长度才会停止。
} //用来计算字符长度 所以,改成{‘a’,’b’,’c’,’\0’或0},\0不进去计算结果
6.求字符串长度 strlen 头文件#include <string.h>
则代码中头文件为
#include <stdio.h>
#include <string.h>
int main(){
printf(“%d\n”,strlen(“c:\test\32\test.c”));
}//结果为13
因为转义字符为1个(其中\t,\32都是转义字符)
7.字符
是由’’单引号引起’a’=97,’A’=65,’0’=0
char ch=’a’;
8.if条件语句if(input==1)做判断时用两个= (input输入)
9.转义字符(转变原来的意思)
eg:\n(换行) \t(水平制表符) \?(书写多个问号时,防止被解析为三字母词)
\ddd(dd表示1-3个八进制数,如\130) \xdd(dd表示2个十六进制数,如\x32)
二进制数由0-1组成 八进制数由0-7组成,列如\328就是错误表达法
三字母词??+其他字符
eg:printf(“(ok??)”); 结果为(ok]
若要正常打印改为printf(“(ok\?\?)”); 结果为(ok)
10.while语句
int main(){
int line=0;
while (line < 200)
{
printf("输入代码%d\n", line);
line++;
}
if (line >= 200)
printf("good");
return 0;
}
11.左移<< 右移>> 按位与& 按位或| 按位异或^ /取商 %取模
int main(){
int a=1;
int b;
b=a<<2;
printf(“%d\n”,b); //为4(因为1的二进制0001,左移两位后变成0100,即4)
printf(”%d\n”,a);//为1(这说明左移,右移是不改变其本身,除非改变后又赋值给本身)
return 0;
}
5/2为2取商 5%2为1取模(只可能是1或0,余数)[易错点]
真为1,假为0
&按位与(有假则假)
|按位或(有真则真)
^按位异或(相同为0,不同为1)
eg:
3二进制 0011
5二进制 0101
& 0001
| 0111
^ 0110
12.!逻辑反操作
将真变假,假变真(真为1,假为0)
int a=10;
printf(“%d\n”,a);为10
printf(“%d\n”,!a)为0
当a=0时
!a为1
13.数组
int arr[]={1,2,3};
int arr[]={‘a’,’b’,’c’};
int arr[8]={0};
char ch[10]={hello bit};
int a=10; int arr[a]={0};是错误的,因为a是变量