总结: 1.数据类型 int float double char 数组:int a[7]; 指针:数据类型 *;int *p; 空类型:int
2.标识符: 自己给数据或者函数取一个名字:int a=4;a就叫标识符。
3.关键字 系统定义好的一些具有特殊意义的词语。
4.scanf函数与printf函数 printf("%d\n",a); scanf("%d",&a); 注意:scanf("%d\n",&a);千万不可以这样写,不能写\n
5.基本运算: 算术运算:%求余运算 关系运算 : == > < >= != 1>2 逻辑运算:|| && 数学中:1<a<5 c语言中: a>1 && a<5 三目运算:a>b?3:5;
6.流程控制 选择:if...else switch switch(a){ case 1: break; case2: break; case 3: break; default; break; } 如果case下面没有break,那么break会执行下一个case,直到碰到break 。
循环: while do.....while while:先判断条件,条件满足会一直执行下去。 while(a>10){ printf("条件一直执行"); }
do { printf("条件不满足"); }while(a>10); 先执行,再判断条件,至少会执行一次。
for(int i=0;i<100;i++){
} i的初始值为0,执行一次巡环之后让i的值加1,直到i的值小于100,循环结束。
7.函数 格式:返回值 函数名(参数可有可无){
} 例如: 需要返回值的类型 int add(int a,int b){ int count=a+b; return count;
} 无需返回值的类型 void printfhello(){ printf("dkfjdk");
}
8.进制问题: 概念:几进制就代表逢几进1 。任意进制的每位不能 >=其本身。 二进制:以0b开头 十进制:无开头 八进制:以0开头 十六进制:以0x开头 二进制与十进制 八进制 十六进制之间的转换
进制的运算:或(|)与(&) 异或运算( ^)取反运算() 左移运算:(<<) 右移运算(>>)
9.内存分析: 从高位寻地址,在分配内存单元的时候从低位开始分配。
10.数组 定义:类型 数组名[长度] 例如:int a[3]; 赋值:数组名[下标]=值;int a[0]=2; 取值:数组名[下标];
遍历数组中的元素: for(int i=0;i<10;i++){ printf("%d",a); } 如何去取一个数组中的最大值 int arr[4]={1,2,3,2}; int temp=arr[0]; for(i=0;i<5;i++){ if(temp<arr) temp=arr
} printf("循环完成temp就为当前数组的最值:%d\n",temp); 选择排序与冒泡排序的原理: 选择:从第一个开始比较分别与后面的数据进行比较大小,找出一个大的,再从第二个数据元素kaishi
11.字符串: 一个以\0结尾的字符数组
12指针: 一个存地址的数据类型 定义:类型 *指针名: int * p; 赋值:指针名字=地址,取地址的方式:&a; int a=7;int * p=&a; *p=7; 操作方式:操作所指空间的数据。 操作自己:移动+1向高位移动 移动—1向低位移动 指针型函数 定义:这个函数的返回值类型是指针; 形式:int *add(int *a){ return &a;
} 用指针创建的是常量 例如:char *p="heiid"; 用字符串创建的是变量
|