C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。
2. 运算符丰富
C的运算符包含的范围很广泛,共有种34个运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
3. 数据结构丰富
C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据类型的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能, 支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。
4. C是结构式语言
结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
5. C语法限制不太严格,程序设计自由度大
虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。
6. C语言允许直接访问物理地址,可以直接对硬件进行操作
因此既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。
7. C语言程序生成代码质量高,程序执行效率高 一般只比汇编程序生成的目标代码效率低10へ20%。 8. C语言适用范围大,可移植性好
6
C语言有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于多种机型
C语言是一种面向过程的基于模块的语言。一般用在和汇编混和编程的嵌入式开发或者较低层的驱动程序开发,操作系统设计。虽然开发周期长,代码维护成本高,可移植性差,但是程序运行效率高,可以更直接的控制硬件。
举个例子:Firefox,我们大都所知道的最流行的优秀浏览器,它所用的语言就是C语言。
C语言执行效率高,仅次于汇编,硬件支持良好,现在的嵌入式开发普遍使用C语言,可移植性好,很多操作系统都支持C语言。
C语言是中级语言,间于高级和低级语言之间。它把高级语言的成分通汇编语言的功能结合起来,所以使用它既可向上也可向下发展。我们既可以使用C语言来进行低级的编程,也可以实现高级语言的某些特性。
其次C语言程序非常容易移植,只需稍微修改甚至不修改就可以在不同操作系统和机器间移植。这对于一些系统来说是很值得一用的,比如说和硬件相关较大的嵌入式开发,如果用C语言编写后,就可以在大部分机器间移植,那是非常方便的,有些操作系统的大部分代码也是用C语言写的。
再次,用C语言编程可以获得高效机器代码,其效率几乎接近汇编语言代码。这是高级语言很难办到的事,很多系统的实习性要求较高,使用高级语言达不到要求或者效果不好,使用汇编很麻烦,所以选择C语言是最合适的了。
另外,学好C语言后,可以把它作为跳板来学习其他语言也是理想的,因为C语言是中级语言,它结合了高级语言和低级语言的特性。
2 系统分析
系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来,就必须先进行调查研究。在系统调查的基础上,对各个现行网上购物系统的分析,给个人网上购物系统的设计实现奠定了基础。
7
2.1分析目标
系统分析是平台设计的重要环节,只有在分析完全的基础上,设计出来的系统才能更完善的运行。为了使我们的办公用品管理系统实现各个用户的需求,使我们的系统在未来的扩展上能实现当时的需求,使我们的系统的总体价值得到提升,分析是必不可少的。
2.2功能需求分析
本程序在安全性方面相对比较突出。为避免程序实现一部分功能即结束,我们采用了用一个子函数代替主函数,子函数调用自身的方法。同时在出现功能选择的地方,为防止出现意外的死循环,我们功能选择参数一律使用string类型。在保存提取数据方面,我们严格按照有变动即存储,存储完立即提取到内存的规则,有效遏止了数据意外丢失或调用不及时等情况的发生。
本程序共使用了9个子函数分别来实现不同功能程序中最关键的通讯录成员采用结构体定义,丰富了成员所包含的信息。在主界执行方面,采用独立的子函数执行。在该函数中分别调用不同功能的函数,执行完相应的功能后可选择继或返回主菜单。主菜单在运行时会先调用一个子函数将通讯录中的信息展示给用户,然后用户可对照信息进行响应的功能选择,不同功能调用不同函数。各功能采用不同函数来执行,方便调试和修改。各函数相互调用,最后整合在一起便构成了该系统程序。
3 详细设计
3.1 流程图
8
开始 读取输出界面 选择操作 数据 0 清除 非0 选1 0 非0 选2 查询 0 保存 非0 选3 添加 0 非0 选4 删除 非0 选5 修改 0 选6 退出系统 结束 9
3.2 源程序
#include
protected: string No; //学号 string Age;
char Name[20]; //姓名 char Sex[10]; //性别 string Tel; //联系方式 Person *next;
public:
Person(string ID,char *Name,char *Sex,string Age,string Tel) { strcpy(this->Name,Name); strcpy(this->Sex,Sex); this->Tel=Tel; this->No=ID; this->Age=Age;
}
friend class Manage;
};
class Manage { private:
Person *person;
10