第一天
一.注释的使用(1.// 2.、/**/ )
二.进制的转换(常用进制:10进制、2进制、八进制、十六进制 )
目标进制 口诀
十进制: 按权就和 转化为其他进制:连除倒取余
二进制:101010
八进制:0123
十六进制:0xabc
三、基本数据类型
char(1个字节)
int(32位系统下占用2个字节,64位操作系统下占用4个字节)
long(4个字节)
float(4个字节)
double(8个字节)
4.强制类型转换
由高精度到低精度转换将会丢失数据
printf("%d\n",(int)35.5); 输出结果:35
由低精度到高精度转换,没有问题
5.运算符
5.1算术运算符:%、++、- -
5.2双目运算符:&&、||
5.3三目运算符:a>b?a:b;
5.4逻辑运算符:&&、|| 、! 存在短路情况(即如果符号前面的运算已经能判断出结果了,那么后面的运算将不再执行)
5.5关系运算符:>、<、 !=、==、>=、<=
6.输入输出函数(stdio.h头文件引入)
printf("hello");
***幻影回车符(连续输入多个字符出的问题)
7.变量与常量
第二天
一、bool类型的使用,常用于循环判断语句,需要导入#include<stdbool.h>
二、分支语句
1.if
2.if-else
3.if-else if-else if-else
4.if ()
{
if()
{}
}
5.swich-case
三、枚举
定义:enum 枚举名称 {a,b,c}
第三天
1.循环
while
do-while
for
第四天
1.数组
1.1数组必须不能越界
1.2数组必须要有长度
2.数组的遍历
用for循环进行数组的遍历
求数组的最值
3.冒泡排序
**优化:
判断是否进行过排列,如果没有进行排列就说明已经排好了序,就不必再费资源去一轮轮的比较了。
4.break; continue的区别
break是终止循环
continue是终止本次循环进行下一次循环
5.字符数组
第五天
1.二维数组
2.二维数组的遍历
3.多维数组
第六天
1.函数的定义
定义:
返回值类型 函数名(形参1,形参2,...)
{
代码块
return 需要返回的值;
}
2.参数
3.变量的作用域
分为局部变量和全局变量
没有被static修饰的变量,只能在本文件中访问;
被static修饰的变量可以跨文件调用
***被static修饰的方法正好跟变量相反,只能被源文件中得其它方法调用,不可以跨文件调用
4.递归调用
第七天
1.结构体
结构体的定义
结构体的赋值
结构体的使用
结构体在内存中的字节数(注意字节对齐)
比如:
struct MyStruct {
char a;
char b;
int c;
double d;
char e;
}
sizeof(MyStruct)=24;
第八天
1.内存的基本概念
2.指针的基本概念
3.指针换指向
int a=0;
int *p=&a;
int b=2;
p=&b;
4.指针和数组的关系
4.1指针数组:实质上是一个数组,只不过内容存储的时指针
使用规则:通过下标取到你想要的指针,然后再按照指针的规则,去使用指针。
4.2数组指针:实质上是指针,指向的是一个数组,但是,这个指针也可以操作数组。例如:p[1]=2;
5.指针和函数的关系
函数指针:实质上是一个指针,这个指针指向一个函数的入口(函数名)
要求:这个指针的类型必须要指向的函数,类型一样
函数名:代表函数的首地址
函数指针使用规则:和直接使用函数一样。
指针作为函数参数的时候,就是将实参的地址传递到函数的内部,因为通过地址可以得到地址上的内容,所以就相当于直接操作实参。
指针还可以当做函数返回值来使用
回调函数
6.指针和结构体之间的关系
结构体指针:实质上是一个指针,指向一个结构体的首地址,结构体名不表示地址
使用规则:p->成员变量 或者*p.成员变量
结构体数组指针:实质上是一个指针,指向的不过是一个由结构体组成的数组罢了。
使用规则:先通过指针,找到想要的数组里面的元素,然后再通过点方法(p[1].age)来操作
7.数组和函数的关系
数组当做函数的参数来使用
定义:一般不指定长度
使用:直接把数组名当做参数就行了
8.关于内存的一些琐碎的知识点
计算机内存的五大分区
代码区
静态区
常量区
栈区
堆区
关于内存的一些操作函数
malloc
9.字符串的常用函数
头文件:#include<string.h>
strcmp(char *a,char *b)//字符串比较函数
strcpy(char *desc,char *source)//字符串拷贝函数
strcat(char *desc,char *source)//字符串拼接函数
strlen(char *a)//字符串长度计算函数
getchar()
putchar()
gets()
10.宏定义
define MAX 9