一、导入文件
在实际的开发中,我们考虑到开发的互相协作性,所以我们写的代码可读性要强,所以我们的代码要分块,这样就是为什么我们创造了一个又一个的函数,但是有些函数别人也调用,但是人家不关心你内部是怎么实现的,只想知道你这个函数能做什么事,函数怎么调用,再者在我们的程序中是先编译,后执行的,所以我们就出现了.h结尾的头文件和.c结尾的实现文件成对出现的现象,而且C语言是面向过程的编程语言,所以在使用一个函数之前要先声明,或者调用它之前就已经在前面写好了,所以.h文件也是有必要的,那么我们只需要导入.h文件就知道这个文件中有哪些我们可以用的方法了,简单明了,而导入文件就需要使用下面一句代码来实现:
#include "main.h" //这一句是导入我们自定义的文件 #include//这一句是导入系统中的头文件
二、基本运算
在C语言中有算数运算符,比如:
加:+
减:-
乘:*
除:/ 在这里除其实是取整,比如 1/2 结果是 0,而不是 0.5
取余:% 这里是取得余数,比如 1/2 结果是 2
注意:不同类型见得运算 比如 int 型的数与 float 型的数相加,那么 int 就会转换为 float 再相加,这是自动转换。
还有赋值的运算符,比如
等于:=
加等:+=
减等:-=
乘等: *=
加加:a++ (先用再加); ++a (先加再用)
减减:a-- (先用再减); --a (先减再用)
Sizeof(); 计算一个变量或者常量或者数据类型所占的存储大小
还有关系运算符,比如
等等:==
大于等于:>=
小于等于:<=
不等: !=
还有逻辑运算符,比如:
与:&&
或:||
非: !
最后有一个常用的运算符,三目运算符: ? :
比如:c = a > b ? a : b; 如果a>b,那么c = a, 否则 c = b;
三、流程控制
流程控制其实就是我们在解决一个问题的时候遇到这个问题的两面性甚至多面性使用的解决办法,常用的有:
if (判断条件){ 执行代码; } if (判断条件){ 执行代码; }else{ 执行代码; } if (判断条件){ 执行代码; }else if(判断条件){ 执行代码; }else{ 执行代码; } switch(){ case : break; default : break; } while(判断条件){ 执行代码; } do{ 执行代码; }while(判断条件); for (int i = 0; i < count; ++i){ } for (int i = 0; i < count; ++i){ for (int i = 0; i < count; ++i){ } } //代码示例 void ifTets(){ int a = 1; if (a == 1) { printf("a的结果是%d \n",a); } if (a > 1) { printf("a的结果大于1 \n"); }else{ printf("a的结果不大于1 \n"); } if (a > 1) { printf("a的结果大于1 \n"); }else if (a == 1){ printf("a的结果等于1 \n"); }else{ printf("a的结果小于1 \n"); } } void switchTest(){ int a = 1; switch (a) { case 0: printf("a等于0 \n"); break; case 1:{ printf("a等于1 \n"); } break; case 2:{ printf("a的平方等于%d \n", a * a); } break; default: break; } } //循环 void whileTest(){ int a = 1; while (a == 3) { a ++; printf("a 的结果为 : %d \n",a); } do { a ++; printf("a 的结果为 : %d \n",a); } while (a == 3); } void forTest(){ for (int i = 0; i < 5; i++) { printf("i 的结果为 %d \n",i); } for (int i = 0; i < 5; i ++) { printf("i 的结果为 %d \n",i); for (int j = 0; j < i; j ++) { printf("j 的结果为 %d \n",j); } } }