第一天
一.註釋的使用(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