您的位置:首页 > 编程语言 > C语言/C++

C语言总结

2014-11-12 09:41 85 查看
十一天课的总结(只为总结,详细请看前面的)

一、顺序结构

从上往下依次执行的代码结构

计算机执行程序时,都是编译成二进制文件,计算机中又分为

二进制:例如 101001001就是一个二进制数字

八进制:例如 023767是一个八进制数字,前面的0代表这是一个八进制数字

十进制:10,33,22是十进制数字

十六进制:0x28AD代表一个十六进制的数字,0x代表这是个十六进制的数字

运算符:

int a = 10,b = 20;

算术运算符

+ :加法运算示例:a + b = 20

- :减法运算 a - b = -10

* :乘法运算 a * b = 200

/ : 除法运算 a / b = 0(整数除法结果取整数部分,小数点后面的都不要)任何数除10相当于去掉个位

% : 取余运算 a % b = 10

比较运算符(为布尔类型)

> :比较是否大于 a > b false

< :比较是否小于
a < b true

== :比较是否等于
a == b false

>= :大于等于
a >= b false

<= :小于等于
a <= b false

%= :取余等于

!= :不等于

逻辑运算符(布尔类型)

&&:并且条件1 && 条件2
同时满足条件1和2时,结果才为真(一架既假,两真才真)

| | :或者条件1 | | 条件2
满足一个条件结果就为真(一真既真,两假才假)

! :非条件 !
将条件的布尔值取反

常量、变量、表达式

常量:在程序中不能改变

变量:在程序中可以改变

表达式:由常量、变量、运算符结合而成的式子

二、选择结构

有选择的执行代码

if (条件表达式){

语句

}

if (条件表达式1){

语句1

}else if(条件表达式2){

语句2

}. . .

switch(){

case1:{

语句1;

break;

}

case2:{

语句2;

break;

}

. . .

default:{

语句;

break;

}

}

三、循环结构

当满足循环条件时,反复执行某一段代码(循环体)的结构

for 循环

for(条件变量初始化;条件表达式;条件变量增量){

语句(循环体)

}

while 循环

条件变量初始值;

while(条件表达式){

语句(循环体);

条件变量增量;

}

do . . .while 循环(基本不使用)

do(语句(循环体)){

条件变量增量

}while (条件表达式)

四、数组、结构体

一位数组、二维数组、多维数组、字符数组、字符串数组

必须是相同数据类型元素组成

二维数组排序(冒泡排序)

int arr[ 5 ] = {2, 6, 3, 7, 5};/ / count 是数组的大小

for (int i = 0; i < count - 1; i++){

for(int j = 0; j < count - 1 - i; j++){

if (arr[ j ] > arr[ j + 1 ]){

int temp = arr[ j ];

arr[ j ] = arr[ j + 1 ];

arr[ j + 1 ] = temp;

}

}

}

结构体:可以存放多个类型元素

struct student {

结构体变量1;

结构体变量2;

. . .

};

一般我们定义结构体时,直接用typedef给结构体重新定义一个新名字

typedef struct {

结构体变量1;

结构体变量2;

. . .

} Student; / / 给结构体起一个新名字Student

另外define(宏定义)、enum(枚举)也是结构体

结构体数组:存放结构体变量的

示例:

typedef struct {

char name[20];

int age;

float score;

} Student;

Student stu1 = {" xiaoming ", 20, 80};

Student stu2 = {" xiaohong ", 19, 90};

Student stu[ ] = {stu1, stuff};

printf("%s %d %.2f",stu[1].name, stu[1].age, stu[1].score) / /打印数组元素时,需要在后面加上( . 变量名)

五、函数(详细请看函数那一篇)

实现某一功能的代码块的封装

例如:格式化的输入、输出函数

printf(" ")输出函数

scanf(" ", &变量名)输入函数

像这类由系统提供的函数称为系统函数,由编译者本身自己编写的函数称为自定义函数

例如:

int sum (int a,int b){

return a + b;

}

这是一个自定义的求和的函数

函数分为:

无参数无返回值: void a(){

printf(" hello ");

}

无参数有返回值:int b(){

return 3;

}

有参数无返回值:void c(int x){

printf(" hui zi ");

}

有参数有返回值:int d (int y){

return y;

}

函数的编写步骤:

1:函数的声明

2:函数的编写

3:函数的调用

六、指针(详细内容请看前两篇)

指针就是地址,指向某个变量地址

函数指针、指针函数

函数指针是一个指针,指向一个函数

指针函数是一个函数,返回值是一个指针

结构体指针

指向结构体的指针

七、动态内存的划分(详细内容请看前两篇)

栈区:内存地址最高,声明的变量之类的都在这,先进后出,不能自动释放

堆区:内存空间最大的,需要手动申请、手动释放

全局区(静态区):存放全局变量,在任何变量前面加static,该变量就会放入全局区

常量区:存放常量

代码区:代码编译产生的CPU指令存放的区域
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: