一、开发过程及环境
用C语言写的代码程序是一个源程序,C语言中的每一条语句最终都将被转换成二进制的机器语言,计算机只能读懂二进制的机器语言,所以我们编写好的C语言程序要经过编辑(输入)、编译和连接后才能形成可执行的程序。下图是C语言程序上位机开发的过程。
目前, 大多使用集成开发工具来开发C语言程序,适合C语言的集成开发工具有多种,常用的有 Turbo C、Microsoft C、Visual C++、Borland C++、Dev C++、C++Builder等,它们各具特色,分别适合于不同的操作系统环境。
二、C语言程序框架
C语言程序大致包括①头文件②全局变量定义③主函数(main函数)④若干子函数
1.头文件
C语言中,stdio.h是一个头文件包含了输入输出相关的函数。
输入:scanf输出:printf
#include作为预处理命令,用于引入头文件
2.全局变量定义
(1)变量的定义
变量必须先定义,后使用。变量是以某标识符为名字,其值可以改变的量,它是以字母或下画线开头的一串字母、数字或下画线构成的序列。变量代表计算机内存中的某一存储空间,这个存储空间可以存放不同的数据。
(2)全局变量与局部变量
局部变量:是在函数内部声明的变量,只在函数内部有效。
全局变量:是在所有函数外部声明的变量,可以在任何地方访问。
变量声明:指在程序中指定一个变量的类型和名称变量。初始化:是指在声明变量的同时给变量赋一个初始值。动态初始化:是指在运行时根据表达式的值来初始化变量。
3.主函数(main函数)
main(){ }
作为这个程序的入口函数,是代码执行的入口,代码都是从这个函数开始执行的。
printf输出函数,用于将内容输出到控制台上 print打印,f是format的缩写,含义就是格式的打印输出。"Hello world!"双引号括起来的内容,称它为字符串。int main(){ }是一个函数,int(integer)代表的是整数,整型。也就是函数返回值是一个整数,于是需要在函数体内部实现返回值,用于返回函数的计算结果,然后返回0,程序结束return 0;
4.若干子函数
C语言中只有一个主函数,子函数是若干的 根据需要定义子函数和使用子函数。C语言中的每个语句结尾务必加上一个分号;并且要注重中英文的切换和书写。
注释的表示方法有"// "和"/**/"就是解释该行代码的意思,计算机是不看注释的,它会自动跳过注释。
三、标识符
C语言的标识符用来表示函数、类型及变量的名称,它是字母,下画线私数字的组合,但必须以字母或下画线开头。标识符中大小写字母的含义不同。
在C语言中,标识符可以是一个或多个字符,其有效长度为1~32个字符,它可用作变量名,函数名、标号及用户定义对象名。
四、关键字
1.数据类型关键字
1) int:整数类型
2) char: 字符型
3) float:单精度浮点型
4) double:双精度浮点型
5) long:长整型
6) short:短整型
7) signed:有符号类型
8) unsigned:无符号类型
9) void:无类型
2.存储类型关键字
10) auto:自动变量
11) static:静态变量
12) extern:外部变量
13) typedef:类型定义
3.结构型关键字
14) struct:结构体
15) union:联合体
16) enum:枚举
17) register:建议编译器尽可能将变量存储到寄存器中
4.控制流关键字
18) if:多条件判断
19) else:多条件的另一个判断分支
20) switch:多分支选择
21) case:switch语句的一个分支
22) break:退出当前循环
23) default:switch语句的默认分支
24) while:循环控制
25) do:循环控制(与while语句一起使用)
26) for:循环控制
27) goto:无条件跳转
28) continue:结束本次循环,进行下次循环
29) return:从函数返回
5.其他关键字
30) const:常量修饰符
31) sizeof:计算字节数
32) volatile:告诉编译器该变量可能会在程序外部被意外改变
五、程序与算法
为了能够让计算机按照我们的想法和指令来处理事务,我们必须要预先设计好完成各项任务的程序,并预先将它们存放在存储器中。
程序,实际上就是我们用计算机语言描述某一个问题的步骤过程,是符合一定语法规则的符号序列。
我们可以通过计算机能够处理的语言,告诉计算机要处理什么,以及每一步的步骤是什么,这就是程序设计。
算法的是指:一个有穷的指令集,这些指令为了解决某些特定的任务而规定的一个运算序列。用通俗的话来说,就是我们用来解决某个问题的方法和步骤。常用的算法有迭代法、枚举法(穷举法)、递归法、递推法、回溯法、分治法等等。
程序=算法+数据结构
这个公式说明了程序、算法和数据结构的关系,也说明了我们要学好数据结构的重要性,对于我们设计的程序来说,算法与数据结构是统一的关系。