收藏 分享(赏)

二级c笔记.docx

上传人:cjc2202537 文档编号:611428 上传时间:2018-04-14 格式:DOCX 页数:4 大小:79.93KB
下载 相关 举报
二级c笔记.docx_第1页
第1页 / 共4页
二级c笔记.docx_第2页
第2页 / 共4页
二级c笔记.docx_第3页
第3页 / 共4页
二级c笔记.docx_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、软件生命周期是指软件产品从提出、实现、使用、维护到停止使用、退役的过程。软件工程过程的4种基本活动是:软件规格说明、软件开发、软件确认、软件演进。软件的生命周期描述了软件从产生到最终消亡的全过程,生命周期中的活动包括需求分析、软件设计(分为概要设计和详细设计) 、软件实现、软件测试和软件维护,不包括市场调研。软件生命周期是指软件产品从提出、实现、使用、维护到停止使用退役的过程。其中,定义阶段包括可行性研究与计划制定和需求分析。测试、概要设计、详细设计和实现属于开发阶段。软件设计的基本原则包括抽象、信息隐藏、模块化、局部化、确定性、一致性、完备性和可验证性。在软件开发的过程中,应该尽早的制定测试

2、计划,其中在需求分析阶段制定系统测试计划,在概要设计阶段制定集成测试计划,在详细设计阶段制定单元测试计划。需求分析阶段的工作可分为4个阶段:需求获取、需求分析、编写需求规格说明书、需求评审。在软件开发中,需求分析阶段常使用的工具有数据流图(DFD) ,数据字典(DD ) 、判断树和判断表。在软件开发的各个阶段经常会使用到一些图形工具,如在需求分析阶段使用数据流图(DFD图) ,在概要设计阶段使用系统结构图,在详细设计阶段使用程序流程图、N-S图或者PAD图等。数据流图中的主要图形元素有加工(转换) 、数据流、存储文件(数据源) 、源和潭等。DFD(数据流图 Data-Flow-Diagram)

3、是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示。它直接支持系统功能建模。在软件详细设计的过程阶段,要对每个模块规定的功能以及算法的设计给出适当的算法描述。常见的过程设计工具有:图形工具:程序流程图,N-S,PAD ,HIPO;表格工具:判定表;语言工具:PDL(伪码) 。本题考查数据流程图DFD的概念。对于面向数据流的结构化分析方法,按照DeMarco的定义, “结构化分析就是使用数据流图(DFD ) 、数据字典( DD) 、结构化英语、判定表和判定树等工具,来建立一种新的、称为结构化规格说明的目标文档”。结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以

4、数据流图和数据字典为主要工具,建立系统的逻辑模型。数据流图(DFD-Data Flow Diagram)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。由此可得数据流程图是结构化方法的需求分析工具。数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解成目标独立的若干阶段。分别是:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编

5、码阶段、测试阶段、运行阶段、进一步修改阶段。数据字典是对系统中数据的详尽描述,是各类数据属性的清单。对数据设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。软件设计是开发阶段最重要的步骤。从工程管理的角度来看可分为两步:概要设计和详细设计。概要设计是将软件需求转化为软件体系结构,确定系统级接口、全局数据结构或数据库模式;详细设计是指确立每个模块的实现算法和局部数据结构,用适应方法表示算法和数据结构的细节。从技术观点来看,软件设计包括软件结构设计(定义软件系统各主要部件之间的关系) 、数据设计(将分析时创建的模型转化为数据结构) 、接口设计(描述软件内部、软件与协作系统之间以及软

6、件与人之间如何通信) 、过程设计(把系统结构部件转换成软件的过程)四个步骤。程序流程图是一种传统的、应用广泛的软件过程设计工具,通常也称为程序框图。其中,用带箭头的线段表示控制流,用柜形表示加工步骤,用菱形表示逻辑条件。软件测试的目的是为了发现程序中的错误,而软件调试是为了更正程序中的错误。确定测试是验证软件的功能和性能及其他特性是否满足了需求规格说明书中确定的各种需求以及软件配置是否完全、正确。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。白盒测试的主要方法有逻辑覆盖、基本路径测试等。软件测试实施的步骤有单元测试、集成测试和确认测试。数据库管理系统是数

7、据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。在 数 据 库 应 用 系 统 中 的 一 个 核 心 问 题 就 是 设 计 一 个 能 满 足 用 户 要 求 , 性 能 良 好 的 数 据 库 ,这 就 是 数 据 库 设 计 。 所 以 数 据 库 设 计 是 数 据 库 应 用 的 核 心 。数据独立性是指数据库中数据独立于应用程序而不依赖于应用程序,即数据与程序间的互不依赖性。也就是说数据的逻辑结构、存储结构与存取方式的改变不会影响应用程序。数据的独立性包括物理独立性和逻辑独立性两级。物理独立性:数据的物理结构(包括存储结构、存取方

8、式等)的改变,如存储设备的更换、物理存储的更换、存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。逻辑独立性:数据库总体逻辑结构的改变,如修改数据模式、增加新的数据类型、改变数据间联系等,不需要相应的应用程序改变,这就是数据的逻辑独立性。将E-R 图转换为关系模式时,实体和联系都可以表示为关系。C语言中的非执行语句例如宏定义命令,在预编译之后替换到代码中,该命令本身也就不存在了,不会转换成二进制的机器指令。由高级语言编写的程序称为“源程序”,把由二进制代码表示的程序称为“目标程序”。C 语言编写的源程序就是一ASCII的形式存放在文本文件中的。C源程序经过C编译程序编译之后生

9、成一个后缀为.obj的二进制文件(称为目标文件) ,然后由称为“连接程序 ”(Link)的软件,把此.obj文件与C语言提供的各种库函数连接起来生成一个后缀为.EXE的可执行文件。由C 语言构成的指令序列称为 C源程序,源程序文件的后缀为 “.c”。源程序经过C编译程序编译生成后缀为“.obj”的二进制文件(称为目标文件) ,然后由称为“连接程序”(Link)的软件把目标文件与C语言提供的各种库函数连接起来,生成后缀为“.exe”的可执行文件。E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。描述算法的有流程图,盒图,伪代码,文字描述以及程序代码描述。本题

10、主要考查的是宏替换,在程序中执行d=sub(a+b)*c 这条语句时,首先要进行宏替换,依据宏SUB(a)的定义可知,上面这条语句替换为d=(a+b)-(a+b)*c ,因为乘法的优先级比减法的优先级高,所以先进行乘法运算,即d=5-5*5=-20。ANSIC标准规定calloc函数返回值的类型为void*。具体使用格式为:calloc(n,size)。该函数用来给n个同一类型的数据项分配连续的存储空间,每个数据项的长度为size个字节。若分配成功,函数返回存储空间的首地址;否则返回空。通过调用calloc函数所分配的存储单元,系统自动置初值0。选项B)中结构体定义中每个成员后面的分号都不能省

11、略,double m后没分号,因此错误。选项C)结构体类型定义完毕后, 外没加分号。选项D)中定义变量要加上关键字struct。C语言允许用typedef说明一种新类型名。定义形式如下:typedef 类型名 标识符;其中“类型名”必须是在此语句之前已定义的类型标识符;“标识符”是一个用户定义标识符,用作新的类型名;typedef语句的作用仅仅是用“标识符” 来代表已存在的“类型名”,并未产生新的数据类型,原有类型名依然有效。注意数组下标本题主要考查结构体变量的定义与初始化。题目中定义了complex类型的结构体变量data1和data2,并对data1进行了初始化。可以用一个结构体变量对另一

12、个结构体变量赋值,用一个结构体变量的成员对另一个结构体变量的成员赋值。在C语言中,函数实参与形参之间数据的传递是传值,也就是说在用实参调用形参时,是把实参的值拷贝一份给形参,而实参的值并不变化,仍是原来的值。所以对于本题来说,在主函数中调f(e)后,实参e的值并不会变化,仍是原值。在函数f中把局部变量b的值依次返回给变量d。本题考查了在线性链表删除一个节点的方法,要删除q所指向的节点,只需要把q所指向的节点的前一个节点中的后继指针指向q所指向的节点的下一个节点即可,即p-next=q-next。再释放q所指向的节点,即free(q) 。如果p指向结构体,那么下面三种形式都可以访问结构体的成员:

13、结构体变量成员名、(*p)成员名、 p-成员名。在C语言中,有两种对文件的存取方式;顺序存取和直接存取;如果以“a” 的方式对一个已打开的文件进行写操作后,则原有文件中内容将保存,新的数据写在原有内容之后。如果以“a+”的方式为读和写而打开一个文件,则既可以对文件进行读,也可以对文件进行写,而且在读和写操作之间不必关闭文件,可以从头开始读。当对文件的读(写)操作完成之后,必须将它关闭。在C语言中,对输入、输出的数据都按“ 数据流”的形式进行处理。数据可以按文本形式或二进制形式存放在介质上,因此文件可以按数据的存放形式分为文本文件和二进制文件。文件指针实际上是指向一个结构体类型的指针,这个结构体

14、中包含如缓冲区的地址、在缓冲区中当前存取的字符的位置、对文件是“读”或“写” 、是否出错、是否已经遇到文件结束标志等信息。一般称文件指针结构体类型名为FILE,可以用此类型名来定义文件指针。【格式】FILE *指针变量名【说明】FILE是一个存储文件信息的结构体类型的变量。注意不要和文件位置指针混淆,在文件内部有一个位置指针,用以指示文件内部的当前读写位置。使用fgetc函数,每读写一次,该指针均向后移动,它不需在程序中定义说明,而是由系统自动设置的。而文件指针是指向整个文件的,须在程序中定义说明,只要不重新赋值,文件指针的值是不变的。fscanf 函数可以向文本文件和二进制文件输入数据。文件

15、使用方式意 义“rt” 只读打开一个文本文件,只允许读数据“wt” 只写打开或建立一个文本文件,只允许写数据“at” 追加打开一个文本文件,并在文件末尾写数据“rb” 只读打开一个二进制文件,只允许读数据“wb” 只写打开或建立一个二进制文件,只允许写数据“ab” 追加打开一个二进制文件,并在文件末尾写数据“rt+” 读写打开一个文本文件,允许读和写“wt+” 读写打开或建立一个文本文件,允许读写“at+” 读写打开一个文本文件,允许读,或在文件末追加数据“rb+” 读写打开一个二进制文件,允许读和写“wb+” 读写打开或建立一个二进制文件,允许读和写“ab+” 读写打开一个二进制文件,允许读

16、,或在文件末追加数据需要注意的是:用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。在程序中定义了一个整型数组a6, 并对它赋初值,并以写入的方式打开了文件d2.dat。然后利用一个for 循环把数组a中的元素数据写入文件d2.dat中,调用函数 rewind把将文件内部的位置指针重新指向一个文件的开头,再利用for循环语句把文件中的数据依次写入到倒序排列的数组a中,最后输出数组a 中的数组元素。buffer是数据块的指针,对fread来说,它是内存块的首地址,输入的数据存入此内存块中;本题考查的是输入输出

17、函数的使用,gets和 getchar函数用于从标准输入设备终端读入字符串和字符,并非从磁盘文件读入,fputs用于把字符串输出到文件,fwrite 用于以二进制形式输出数据到文件。本题主考查函数fwrite的使用。函数fwrite的调用形式为:int fwrite(char *pt,unsigned size,unsigned n,FILE *fp);其功能是把pt 所指向的n*size个字节输出到fp所指文件中。在本题中fwrite(s2,7,1,pf);的功能是把字符串“Beijing” 输入到文件abc.dat中,然后调用rewind(pf),把文件位置指针回到文件开头,再调用fwri

18、te(s1,5,1,pf)把字符串“China”写入到文件abc.dat 中,所以此时文件abc.dat 的内容为 Chinang。ANSI C提供的feof函数的功能是判断 fp所指的文件的位置是否已达到文件尾,如果达到文件尾,则feof函数的值为1,否则为 0,表示文件尚未结束。fputc()是以字符(字节)为单位的读写函数。 每次可从文件读出或向文件写入一个字符。使用格式为fputc(ch,fp);其中 ch 是待输出的某个字符,它可以是一个字符常量,也可以是一个字符变量;fp 是文件指针。fputc(ch,fp)的功能是将字符 ch 写到文件指针 fp 所指的文件中。如果输出成功, fputc 函数返回所输出的字符;如果输出失败,则返回一个 EOF 值。EOF 是在 stdio.h 库函数文件中定义的符号常量,其值等于-1。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报