数据库原理与应用实验9(二版)

数据库原理与应用实验9(二版)
数据库原理与应用实验9(二版)

实验九数据安全性实验

一、实验目的及要求

本实验的目的是通过实验使学生加深对数据安全性的理解,并掌握SQL Server中有关用户,角色及操作权限的管理方法。主要要求有:

●理解SQL Server安全体系结构和安全机制。

●理解数据库登录账号和数据库用户账号之间的区别与联系。

●理解角色的概念,能创建角色。

●掌握为通过可视化管理器为数据库用户授权的方式。

●掌握通过T-SQL为用户授权及收权的方法法。

二、实验原理及背景知识

(一)SQL Server 安全体系

SQL Server提供以下四种安全防护:

1、Windows操作系统的安全防线

Windows的网络管理员负责建立用户组,设置帐号并注册,同时决定不同的用户对不同的系统资源的访问级别。用户只有拥有了一个有效的Windows登录帐号,才能对网络资源进行访问。

2、SQL Server的运行安全防线

SQL Server 通过另外一种帐号设置来创建附加安全层。SQL Server具有标准登录和集成登录两种用户登录方式,用户只有登录成功,才能与SQL Server建立一次连接。

3、SQL Server数据库的安全防线

SQL Server的特定数据库都有自己的用户和角色(用户组),该数据库只能由它的用户或角色访问,其他用户无权访问其数据,数据库系统可以通过创建和管理特定的数据库的用户和角色来保证数据库不被非法用户访问。

4、SQL Server数据库对象的安全防线

SQL Server可以对权限进行管理,SQL的DCL功能保证合法用户即使进了数据库也不能有超越权限的数据操作,即合法用户必须在自己的权限范围内进行数据操作。

图2-9-1 数据库系统的安全机制

(二)数据访问级别和类型

DBMS中的安全系统必须具有伸缩性以便为各种数据级别授权。数据级别有以下几种:整个数据库、单个关系表(所有行和所有列)、关系表中特定列(所有行)、关系表中的特定行(所有列)以及关系表的特定行和特定列。

数据的常用访问模式和类型如下:

●插入或建立:在文件中添加数据,不销毁任何数据。

●读取:用户可通过应用程序或数据库查询,将数据从数据库复制到用户环境。

●更新:编写更新值。

●删除:删除和销毁特定数据库对象。

(三)任意控制(DAC)

采用该方法以若干种指派模式授予各个用户访问特定数据项的权限或权力。建立数据库对象的用户自动得到此对象的所有访问权限,包括将此对象的权限再授予他人。在授予或撤消访问权限时,有两种主要级别:

数据库对象:数据项或数据元素,一般是基本表或视图。

用户:可以用一些授权标识符识别的单个用户或用户组。

授权通常都是在这两种级别上进行。

1、授权

DBMS提供了功能强大的授权机制,它可以给用户授予各种不同对象(表、视图、存储过程等)的不同使用权限(如SELECT、update、insert、delete等)。

可以授予数据库模式和数据操纵方面的以下几种授权,包括:创建和删除索引、创建新关系、添加或删除关系中的属性、删除关系、查询数据、插入新数据、修改数据、删除数据等。

在数据库对象级别,可将上述访问权限应用于数据库、基本表、视图和列等。

2、数据库角色

数据库角色是被命名的一组与数据库操作相关的权限,角色是一组相关权限的集合。因此,可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程。

一般使用方法是先创建一个角色,并且把需要的许可分配给角色,而不是分配给个人用户,然后再把角色分配给特定用户。

1)服务器角色

系统管理员:拥有SQL Server所有的权限许可。

服务器管理员:管理SQL Server服务器端的设置。

磁盘管理员:管理磁盘文件。

进程管理员:管理SQL Server系统进程。

安全管理员:管理和审核SQL Server系统登录。

安装管理员:增加、删除连接服务器,建立数据库复制以及管理扩展存储过程。

数据库创建者:创建数据库,并对数据库进行修改

2)数据库角色

public:维护全部默认许可。

db_owner:数据库的所有者,可以对所拥有的数据库执行任何操作。

db_accessadmin:可以增加或者删除数据库用户、工作组和角色。

db_addladmin:可以增加、删除和修改数据库中的任何对象。

db_securityadmin:执行语句许可和对象许可。

db_backupoperator:可以备份和恢复数据库。

db_datareader:能且仅能对数据库中的任何表执行SELECT操作,从而读取所有表的信息。

db_datawriter:能够增加、修改和删除表中的数据,但不能进行SELECT操作。

db_denydatareader:不能读取数据库中任何表中的数据。

db_denydatawriter:不能对数据库中的任何表执行增加、修改和删除数据操作。

(四)视图机制

视图机制也可以实现某种意义上的安全性。视图提供了一种灵活而简单的方法,以个人化方式授予访问权限,是强大的安全工具。在授予用户对特定视图的访问权限时,该权限只用于在该视图中定义的数据项,而未用于完整基本表本身。在使用视图的时候不用担心用户会无意地删除数据或者给基本表中添加有害的数据,并且可以限制用户只能使用指定部分的数据。

三、实验内容及步骤

Ⅰ:基本实验内容

(一)修改数据库验证方式

任务1:在SQL Server企业管理器中为所属的SQL 服务器设置为SQL Server和Windows NT混合安全认证模式.

SQL Server 2005中打开服务器属性界面后,点击左边的“安全性”即可修改,如图2-9-2所示。

图2-9-2

(二)管理服务器登录账户

任务2:为服务器建立一个登录账号stu01,赋予其一定权限,步骤如下:

1、展开服务器的“安全性”目录下面的“安全性”,然后在“登录名”上点击右键,选择“新建登录名”,弹出新建登录界面,如下图2-9-3所示。在登录名中输入stu01,同时设置为SQL Server 身份验证,输入登录名密码。

图2-9-3

2、点击左边的选择页中的“服务器角色”,在新界面中选择好角色。如图2-9-4所示。

图2-9-4

3、继而通过用户映射界面,为该登录名选择好可以访问的数据库和角色,选择如图2-9-5所示。

图2-9-5

4、然后点击“确定”即可完成新登录账号创建。

注意:在创建登录账户的时候可以不为账户设定数据库访问,可以在以后通过数据库用户进行设置。任务3:利用同样方法,创建登录名stu02,该用户服务器角色和用户映射均不做任何修改,接受默认值即可。

(三)管理数据库用户

任务4:为stuManag数据库创建一个用户user01,设置管理登录用户为stu02,过程如下:

1、展开要stuManag数据库下面的“安全性”,然后在“安全性”目录中右键点击“用户”,在快捷菜单中选择“新建用户”,弹出如图2-9-6所示界面。

图2-9-6

2、输入新建的用户名user01,并输入或者选择一个对用的登录名。如果选择登录名,可以点击登录名右边的浏览按钮,弹出选择登录名界面,如图2-9-7所示,在图2-9-7中点击下面的“浏览”按钮,则弹出图2-9-8所示界面,从中选择登录名stu02,然后确定,回到图2-9-6界面。

图2-9-7

图2-9-8

3、在图2-9-6界面中,为新用户选择数据库角色,此处选择db_datawrite。然后进入“安全对象”页面为该用户细化权限,如图2-9-9。

图2-9-9

4、在图2-9-9页面中,点击“添加”按钮,在新的“添加对象”界面中,选择“特定类型的所有对象”然后点击“确定”,如图2-9-10所示。

图2-9-10 图2-9-11

5、在随后出现的选择对象类型界面中,选择“表”,如图2-9-11所示,然后点击“确定”。

6、在新出现的图2-9-12所示界面中,首先从上部选择student表,然后在下部选择一些权限进行授予或者拒绝,如图2-9-12所示。

图2-9-12

7、有些权限可以进行“列权限”的设置,如图2-9-12所示,选择update权限,然后点击“列权限”按钮,进入图2-9-13所示界面。

8、在图2-9-13所示界面中,决定对sname和ssex的修改权限。并点击“确定”按钮,完成新用户的创建。

图2-9-13

(四)验证安全性设置

尝试完成下面的步骤,如果遇到错误请分析错误产生原因,并继续进行下一步操作。

1、首先利用stu01登录到服务器,然后尝试创建一个新数据库名字叫Test01。

2、尝试为服务器创建一个新登录用户stu03,权限随意设置。

3、尝试打开stuManag数据库中任意个表,如果打开则尝试进行数据的删除、修改和添加。

4、尝试在stuManag数据库中创建一个新表,字段随便添加。

5、更好为stu02登录到服务器,重复上面的1-4步骤。

6、打开stuManag数据库中student表,添加一行新记录。

7、打开stuManag数据库中student表,删除一行新记录。

8、打开stuManag数据库中student表,修改一条记录的籍贯信息。

9、打开stuManag数据库中student表,修改一条记录的姓名信息。

Ⅱ:高级实验内容

(一)SQL方式安全性管理

1、创建一个登陆帐户LoginA,然后在数据库stuManag中创建用户UserA,使其所对应的帐号为LoginA。

sp_addlogin ‘LoginA’,’A’

go

use stuManag

go

sp_grantdbaccess ‘loginA’,’UserA’

2、在数据库stuManag中天加一个角色RoleA,并把用户UserA加入到这个角色中

sp_addrole “RoleA’。

go

sp_addrolemember ‘RoleA’,’userA’

3、将stuManag数据库中student表的SELECT权限授予RoleA,创建表的许可授予RoleA。

Grant SELECT On student to roleA

Go

grant CREATE table to RoleA

4、将stuManag数据库中student表和Teacher表的SELECT权限授予UserA,创建表的许可授予

UserA。

use stuManag

grant SELECT on student, Teacherto userA

grant CREATE table to userA

5、否决UserA在的department表的SELECT权限。

use stuManag

go

Deny SELECT on departmentto UserA

6、收回UserA在的Teacherto表的SELECT权限。

use stuManag

go

Revoke SELECT on Teacherto to UserA

7、从角色RoleA中去除用户UserA。

use stuManag

go

sp_droprolemember RoleA,userA

8、从数据库stuManag中删除用户UserA。

use stuManag

go

sp_revokedbaccess 'userA'

9、从数据库stuManag中删除角色RoleA。

use stuManag

go

sp_droprole RoleA

10、从SQL Server中删除登陆帐户LoginA。

sp_droplogin loginA

go

注意:在删除角色之前应先将该角色的成员先删除。

(二)为stuManag数据库创建用户体系

请使用T-SQL来完成基本实验内容中的任务。

(三)为stuManag数据库创建用户体系

StuManag数据库中数据不是对所有用户都开放的,其主要用户分为三类:管理员、教师、学生和访客。不用类具有不同的权限。请为这几类用户分别创建一个登录账号,并设定其权限,假设基本权限如下所示。

四、实验思考题

1、SQL Server系统对于数据库的安全管理体现在哪些方面,是怎么管理的?

2、为什么使用角色?举一简单的使用范例说明?

实验九 Servlet应用

实验九 Servlet应用 1.实验目标 1.掌握Servlet的编写与配置 2.理解Servlet的生命周期 3.理解Servlet与JSP的区别 2.实验内容与要求 1.主要通过实践掌握对servlet的使用、编写 2.创建一个简单的servlet程序并在tomcat中进行配置 3.创建一个可以接收客户端提交参数,处理后返回给客户端的servlet程序。 4.使用request.getParameterValues(“”)获取复选框数据,实现用户注册功能 3.实验步骤 1. 实现一个简单的HelloServlet,要求在IE中显示“Hello XXX”字符串。 1)通过继承HttpServlet类创建自己的servlet类 2)在servlet类的doGet()方法中输出自己的信息 3)将生成的HelloServlet.java类编译成HelloServlet.class类,注意编译的时候要用到servlet-api.jar文件。

2.创建和部署Servlet 1)在Tomcat\webapps\目录下创建自己的项目名称myExample 2)在Tomcat\webapps\myExample目录下创建WEB-INF目录,并在该目录下创建一个classes目录,将编译后的HelloServlet.class文件拷贝到这里。 3)在Tomcat\webapps\myExample目录下创建WEB-INF目录并创建一个web.xml文件。 内容为 HelloServlet是我们自己定义的servlet-name,指定HelloServlet类(如果有报名要包含包名) 中指定的是我们在IE中所用的地址。 3.启动tomcat,测试运行 输入:http://localhost:8080\myExample\HelloServlet 2.编写一个处理登录请求的Servlet 1.编写Servlet,并接收从http中传递过来的参数 说明: 1、response.setContentType("text/html;charset=GB2312"); 和request.setCharacterEncoding("GB2312");两个方法主要是设置从客户端接收的字符编码和从服务器端返回的信息的编码,以防止中文出现乱码的的情况。 2、通过request.getParameter(" ") 方法分别得到从客户端传递过来的name和 password。 3、最后用out.println()方法输出显示给客户的信息。 4、编译LoginServlet.java,注意编译的时候使用到servlet-api.jar文件,将编译生成 的LoginServlet.class 文件拷贝到tomcat\webapps\myproject\WEB-INF\classes目录 下。

广东工业大学数据库原理与应用试卷答案

广东工业大学试卷用纸,共 页,第 页

广东工业大学试卷用纸,共页,第页

广东工业大学试卷用纸,共页,第页

一、填空(每题1分,共10分) 1、层次模型,网状模型,关系模型 2、逻辑结构设计,物理结构设计 3、原子性,持续性 4、并发调度的可串行性 5、闭包 6、描述事物的符号记录 二、选择题(每题2分,共20分) 三、简答题(每题4分,共16分) 1、解释数据库,数据库系统,数据库管理系统三个概念。 数据库是指长期存储于计算机内的、有组织的、可共享的数据集合。(1分) DBMS是指位于用户与OS之间的一层数据管理软件,它位用户或应用程序提供访问DB的方法。(1分) DBS是实现有组织的、动态的存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即采用数据库技术的计算机系统。(2分) 2、试述视图和基本表之间的联系和区别? (1)视图和基本表在概念上等同,他们都是关系。(1分) (2)基本表是本身独立存在的表。视图是从一个或几个基本表(或视图)中导出的表,它与基本表不同,是一个 虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍然放在原来的基本表中。(3分) 3、数据库的完整性概念与数据库的安全性概念有什么区别和联系? 数据的完整性和安全性是两个不同的概念,但是有一定的联系。 前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。(2分) 后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。(2分) 4、什么是封锁?基本的封锁类型有几种,简要说明它们的含义。 封锁就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象。(2分)基本封锁类型:排它锁和共享锁。 排它锁又称为写锁:若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁(1分) 共享锁又称为读锁:若事务T对数据对象A加上S锁,则其它事务只能再对A加S锁,而不能加X锁,直到T 释放A 上的S锁。(1分) 四、计算(4分) 1、(R÷S)×S={(2,3,4,5),(2,7,2,3)} 2 广东工业大学试卷用纸,共页,第页

实验九 函数的重载和变量的作用域

实验九函数的重载和变量的作用域 一、实验目的 1、了解内联函数、重载函数、带默认参数函数的定义及使用方法。 2、掌握作用域的概念、变量的存储类型及它们之间的差别。 3、掌握程序的多文件组织。 二、实验内容 1、重载函数允许不同的函数使用相同的名字,这使得完成类似的任务时可以使用相同的函数名。 范例:编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,计算边长为1的正方形及其内切圆、内接等腰三角形和等腰梯形面积。 函数原型如下: double area(double radius=0); //圆面积,参数为半径,默认参数为0,表示点面积 double area(double a, double b); // 计算矩形面积,参数为长和宽 double area(double a, double b, double h); //计算梯形面积,参数为两底和高 double area(double a, double b, double c, int); //计算三角形面积,参数为三边长,int 型参数起标示作用,以区别于梯形,不参加计算。 #include #include using namespace std; const double PI=3.14159; double area(double radius=0); double area(double a,double b); double area(double a,double b,double h); double area(double a,double b,double c,int); int main(){ cout<<"Area of point is"<

实验9 使用T-SQL编写程序

实验9 使用T-SQL编写程序 【实验目的】 1)掌握常用函数的使用方法。 2)掌握流程控制语句的使用方法。 【实验环境】 Sql server 2005 【实验重点及难点】 1)启动SQL Server 2005查询编辑器。 2)应用转换函数。 3)应用聚合函数。 4)应用字符串函数。 5)应用IF〃〃〃ELSE语句。 6)应用WHILE语句。 【实验内容】 (1)应用转换函数 1)打开“SQL Server Manageement Studio”窗口。 2)单击“标准”工具栏上的“新建查询”按钮,打开“查询编辑器”窗口。 3)在窗口内直接输入以下语句,求Course表中课程号为“7”的课程名称的长度,并输入结果。 declare @课程名称长度int select @课程名称长度=len(Cname) from course where Cno ='7' print'课程名称长度为'+str(@课程名称长度); 4)单击“SQL编辑器”工具栏上的“分析”按钮,检查输入的T-SQL语句是否有语法错误。如果有语法错误,则进行修改,直到没有语法错误为止。 5)确保无语法错误后,单击“SQL编辑器”工具栏上的“执行”按钮。将执行结果记录下来。 (2)应用聚合函数 1)在“查询编辑器”窗口内输入以下语句,统计Student表中的学生人数,并输出结果。 declare @学生人数int select @学生人数=count(*) from Student print'学生人数为'+str(@学生人数); 2 )单击“SQL编辑器”工具栏上的“执行”按钮。将执行结果记录下来。

2019年大学《数据库原理及应用教程》试题及答案

《数据库原理及应用教程》试题及答案 一、选择题 1、下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对 (2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句 (5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58 A. 对象 B. 继承 C. 类 D. 过程调用 (6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)

A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (7) 在软件开发中,下面任务不属于设计阶段的是(D) A. 数据结构设计 B. 给出系统模块结构 C. 定义模块算法 D. 定义需求并建立系统模型 (8) 数据库系统的核心是(B) A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 (9) 下列叙述中正确的是(C) A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统 C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致 (10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数 (12) 算法的空间复杂度是指(D)

实验九 数组

实验九数组 一、实验目的 ①掌握数组的声明、数组元素的引用。 ②掌握静态数组和动态数组的使用差别。 ③掌握用数组解决与数组有关的常用算法,如:求最大(最小)值、求和、求平均值、排序(冒泡法排序、选择法排序和插入法排序)和查找等。 二、实验任务 实验内容1: 设有如下两组数据:A:2,8,7,6,4,26,24B:79,27,32,40,57,66,82 编写一个程序,把上面两组数据分别读入两个数组中,然后把两个数组中对应下标的元素相加,即2+79,8+27,…,24+82,并把相应的结果放入第三个数组中,最后输出第三个数组的值。分别以姓名1.frm 和姓名1.vbp为窗体名和工程名保存在计算机上。 【分析】 两个一维数组中下标相同的元素相加之和是第三个一维数组中对应下标的元素。 实验内容2: 使用Array函数给数组进行初始化为:6,2,5,8,9,15,26,18,然后计算数组各元素的和,并在窗体上输出数组各元素的值和数组元素的和。分别以姓名 2.frm 和姓名2.vbp为窗体名和工程名保存在计算机上。 【分析】 ?Array函数只能给variant类型的数组变量进行初始化,只能给一位数组进行初始化 ?数组的元素类型必须相同,单如果数组类型是variant时,可以包含不同类型的元 素 ?数组的下界缺省为0,也可用option语句将数组的下界设置为1.数组的上界可通过 ubound函数获得。 实验内容3: 从键盘上输入10个整数,并放入一个一维数组中, 然后将其前5个元素与后5个元素对换,即:第1个 元素与第10个元素互换,第2个元素与第9个元素互 换……第5个元素与第6个元素互换。分别输出数组 原来各元素的值和对换后各元素的值。 【分析】 同一数组中元素的互换与变量交换值是类同的, 需要借助与第三个变量来作为中转的对象。

数据库原理和应用教程第4版习题与解析

习题参考答案 第1章习题参考答案 一、选择题 1. C 2. B 3. D 4. C 5. D 6. B 7. A 8. B 9. D 10. B 11. C 12. D 13. D 14. D 15. B 16. C 17. D 18. A 19. D 20. A 21. D 22. D 23. C 24. A 25. C 二、填空题 1. 数据库系统阶段 2. 关系 3. 物理独立性 4. 操作系统 5. 数据库管理系统(DBMS) 6. 一对多 7. 独立性 8. 完整性控制 9. 逻辑独立性 10. 关系模型 11. 概念结构(逻辑) 12. 树有向图二维表嵌套和递归 13. 宿主语言(或主语言) 14. 数据字典 15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构 16. 现实世界信息世界计算机世界 三、简答题 1、简述数据库管理技术发展的三个阶段。各阶段的特点是什么? 答:数据库管理技术经历了人工管理阶段、文件系统阶段和数据库系统阶段。 (1)、人工管理数据的特点: A、数据不保存。 B、系统没有专用的软件对数据进行管理。 C、数据不共

享。D、数据不具有独立性。 (2)、文件系统阶段的特点: A、数据以文件的形式长期保存。 B、由文件系统管理数据。 C、程序与数据之间有一定的独立性。 D、文件的形式已经多样化 E、数据具有一定的共享性 (3)、数据库系统管理阶段特点: A、数据结构化。 B、数据共享性高、冗余度底。 C、数据独立性高。 D、有统一的数据控制功能。 2、从程序和数据之间的关系来分析文件系统和数据库系统之间的区别和联系 答:数据管理的规模日趋增大,数据量急剧增加,文件管理系统已不能适应要求,数据库管理技术为用户提供了更广泛的数据共享和更高的数据独立性,进一步减少了数据的余度,并为用户提供了方便的操作使用接口。数据库系统对数据的管理方式与文件管理系统不同,它把所有应用程序中使用的数据汇集起来,以记录为单位存储,在数据库管理系统的监督和管理下使用,因此数据库中的数据是集成的,每个用户享用其中的一部分。 3、简述数据库、数据库管理系统、数据库系统三个概念的含义和联系。 答:数据库是指存储在计算机内、有组织的、可共享的数据集合。 数据库管理系统是软件系统的一个重要组成部分,它通过借助操作系统完成对硬件的访问,并对数据库的数据进行存取、维护和管理。 数据库系统是指计算机系统中引入数据库后的系统构成。它主要由数据库、数据库用户、计算机硬件系统和计算机软件系统几部分组成。 三者的联系是:数据库系统包括数据库和数据库管理系统。数据库系统主要通过数据库管理系统对数据库进行管理的。 4、数据库系统包括哪几个主要组成部分?各部分的功能是什么?画出整个数据库系统的层次结构图。 答:数据库系统包括:数据库、数据库用户、软件系统和硬件系统。 数据库主要是来保存数据的。 数据库用户是对数据库进行使用的人,主要对数据库进行存储、维护和检索等操作。 软件系统主要完成对数据库的资源管理、完成各种操作请求。 硬件系统主要完成数据库的一些物理上的操作,如物理存储、输入输出等。

Excel实验2表格格式设置及公式和函数的应用

表格格式设置及公式和函数的应用 实验目的:1、熟练掌握公式和函数的应用 2、熟练掌握数据的填充、复制和移动 3、熟练掌握对表格的格式设置以及格式刷的使用 实验内容共包括四项,总分100分。 实验内容一:以自己的学号和姓名建立一个电子表格,如在工作薄“050123456789张三.xls”中的sheet1工作表中完成下列操作,其中职员工资一览表如下:(25分) 操作要求: 1.输入正确数据,按要求设置单元格和表头文字。表格标题:黑色、黑体、 加粗、合并、居中。(5分) 2.在“税收”列计算税收,当月收入超过1600元,征收5%的个人所得税,保 留2位小数。(5分) 3.在“实发金额”列计算实际发放金额,保留2位小数。(4分) 4.合计“工资”、“奖金”、“税收”、“实发金额”列,保留2位小数。(5分) 5.在表格中将工资少于1600元的职工工资用红色标出(4分) 6.将工作表的名字“sheet1”改为“职工工资一览表”(2分)

说明。(共计15分) 1.标题设为20磅红色行文行楷。把第一行设置为合并居中。(2分) 2.在“姓名”前插入一列,标题为“学号”,数据从2005001开始,按步长为3 的等差数列有上至下填充。(3分) 3.所有数据都设置对齐方式为水平和垂直居中。将表的外边框设置为蓝色双线, 内部为蓝色单线,表格底纹为浅青绿色。如下图所示(5分) 4.正确计算各位同学的总分。(2分)

(共计40分) 1、第一行字体要求16磅、黑体、合并及居中;(3分) 2、第一行和第二行分别加上底纹,如下图所示;(3分) 3、第二行8磅、华文细黑,自动换行,调整列宽如下图所示;(5分) 4、取消08普本通信内部的边框线,前6列合并单元格,第7、8、9列要求 左对齐,缩小字体填充,其余居中对齐,自动换行;(5分) 5、“07普本通信工程”的格式设置如“08普本通信工程”;(5分) 6、第一列加上虚线、绿色边框;(3分) 7、工作表名称“sheet3”修改为“开课计划”;(1分) 8、“合计”项使用求和函数,分别求出各年级“学分”,“课程总学时”, “理论学时”,“实践学时”的总和,并设置格式为蓝色加粗。(9分)

沈阳工业大学849 数据库原理及应用

2019年硕士研究生招生考试题签 (请考生将题答在答题册上,答在题签上无效) 科目名称:数据库原理及应用第1页共4页 精品文档,欢迎下载! 一、单项选择题(40分,每题2分) 1、数据库中存储的是0A.数据B,信息C,数据之间的联系D,数据以及数据之间的联系 2、数据的物理独立性是指应用程序独立于。A.外模式B,模式 C.内模式D.子模式 3、关系数据库的查询操作由三种基本运算组合而成,这三种基本运算不但葬A.投影 B.除法 C.连接 D.选择 4、不允许在关系中出现重复记录的约束是通过实现的。 A.主码 B.外码 C.索引 D.惟一索引58、部分匹配查询中有关通配符的正确的叙述是。A.代表多个字符 B.可以代表零个或多个字符C.不能与“%”一同使用 D.代表一个字符9、在关系双据库系统中,为了简化用户的查询操作,后又不增加数据的存储空间,常用的方法12、下列说法中正确的是 A,关系模式的规范化程度越高越好 B,若关系模式R 中只有两个属性,则R 至少属于3NF C,属于3NF 的关系模式中己完全消除了插入异常和删除异常 D,具有无损链接性的模式分解能保证不丢失原模式中的信息 13、数据库设计中,建立数据字典的时机是阶段。A,需求分析B,概念设计C.逻辑设计D.物理设计14、数据库物理设计不但聲 A.存储记录结构设计C.确定数据存放位置 B.存取方法设计D.关系规范化 是创建 A.索引 B.游标 C.视图10、数据库的是指数据的正确性和相容性。A 一荷枇R 安仝桦C 穽整桂D 并舄桂 11、 将数据库对象的操作权限授予用户,属于安全控制机制中的 D.另一个表D,审计

C++实验九类和对象的使用实验报告

实验九类和对象的使用实验报告 一实验目的 1、学会用构造函数对类对象进行初始化 2、掌握析构函数,并了解构造函数和析构函数的调用顺序 3、了解对象数组和对象指针的用法 4、学会共用数据的保护,了解常对象、常成员函数等的使用限制 二实验内容和要求 1.回顾课本知识,掌握重点和难点,认真分析例题熟悉本章内容。 2.完成本章课后习题2、6、7题,认真分析每一题的代码。 三实验环境 Visual C++6.0开发环境 四源程序 2、 #include using namespace std; class Date { public: Date(int,int,int); Date(int,int); Date(int); Date(); void display(); private: int month; int day; int year; }; Date::Date(intm,intd,int y):month(m),day(d),year(y) {} Date::Date(intm,int d):month(m),day(d) {year=2005;} Date::Date(int m):month(m) { day=1; year=2005; }

Date::Date() { month=1; day=1; year=2005; } void Date::display() { cout< using namespace std; class Student { public: Student(intn,float s):num(n),score(s) {}; void change(intn,float s) { num=n; score=s; } void display() { cout<

数据库原理及应用

数据库原理及应用 数据库技术简介 数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。 第一章绪论 1.1 数据库系统概述 1.1.1 四个基本概念 数据(Data) 数据库(Database)数据库管理系统(DBMS) 数据库系统(DBS) 一、数据 数据(Data)的定义 数据是信息的具体表现形式 描述事物的符号记录 数据的表现形式——数字文字图形图像声音等 各类数据必须数字化后才能加工处理。 数据与其语义是不可分的 例如:93是一个数据 语义1:学生某门课的成绩 语义2:某人的体重 语义3:计算机系2007级学生人数 例如:学生档案中的一条记录:(李明男1982 江苏计算机系2000) 二、数据库(续) 数据库的定义 数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。 三、数据库管理系统 什么是DBMS 数据库管理系统(Database Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。 DBMS的用途 组织和存储好大量的数据,并提供方便、高效地检索数据和维护数据的手段。 DBMS的主要功能: 数据定义功能 数据组织 存储和管理 数据操纵功能 数据库的事务管理和运行管理 数据库的建立和维护功能 其它功能 四、数据库系统 什么是数据库系统

数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统。 数据库系统的构成 数据库 数据库管理系统(及其开发工具) 应用系统 数据库管理员(DBA) 1.1.2 数据管理技术的产生和发展 数据管理:是指对数据的分类、组织、编码、存储、查询和维护等活动,是数据处理的中心环节。 数据处理:是指对数据进行收集、组织、存储、加工、抽取和传播等一系列活动的总和。其目的是从大量的、原始数据中抽取、推导出对人们有价值的信息。 数据管理技术的发展动力:应用需求的推动、计算机软/硬件的发展 数据管理技术的发展过程 人工管理阶段(40年代中--50年代中) 文件系统阶段(50年代末--60年代中) 数据库系统阶段(60年代末--现在) 一、人工管理 时期 40年代中--50年代中 产生的背景 应用需求科学计算 硬件水平纸带、卡片、磁带 软件水平没有操作系统 处理方式批处理 特点:数据不保存、数据由程序各自管理(逻辑结构、存储结构、存取方法、输入方式等) 数据不共享:一组数据只能对应一个程序 数据不具独立性:数据的结构发生变化后(物理或逻辑上),应用程序必须做相应的修改。 应用程序与数据的对应关系(人工管理阶段) .. 二、文件系统 时期

实验九-可逆计数器的功能测试及应用电路

实验九可逆计数器的功能测试及应用电路 实验目的: (1)掌握可逆计数器74LS191、74LS191、74LS192、74LS193的逻辑功能及使用方法。 (2)熟悉可逆计数器实现任意进制的数码倒计时电路的工作原理。 实验仪器与器件: 实验箱一个;双踪示波器一台;稳压电源一台;函数发生器一台。 74LS191、74LS191、74LS191或74HC48、74LS00和74LS04。 实验内容: 1测试74LS190和74LS191的逻辑功能,并用数码管显示,验证是否与表2-9-4一致,分别画出各单元的电路图,写出各自的状态 实验原理:单时钟74LS191二进制同步加/减计数器的功能表如下: 表2-9-4 单时钟74LS191二进制同步加/减计数器的功能表 单时钟74LS191二进制同步加/减计数器是十进制的,其他功能与74LS191一样。它的有效状态为0000~1001. 实验电路: 如图所示是减计数时当计数器的状态变为0时的电路状态:RCO=0,MAX/=1; MIN

实验现象与结果: 该结果是当CTEN =0,D L =1,D U /=1时,A B C D Q Q Q Q 的 波形图; 该结果是当CTEN =0,D L =1,D U /=1时, RCO 与MIN MAX /的波形图

需要说明的是:当CTEN= D L=1时,电路保持原来的状态。 2测试74LS192和74LS193的逻辑功能,并用数码管显示,验证是否与表2-9-3及2-9-5一致。画出测试电路图。 实验原理: 双时钟74LS192同步十进制可逆计数器的功能表如下表所示,74LS192是十进制计数器。 表2-9-3双时钟74LS192同步十进制可逆计数器的功能表 输入输出工作 状态 U CP UP D CP DOW N CLR D L DCBA A B C D Q Q Q Q U TC D TC **H H ****0000 H H 异步 清零**L L 1001 1001 H H 异步 置数 H ↑L H ****1001→ 0001→ 0000H H H L 减法 计数 ↑H L H ****0000→ 1000→ 1001H L H H 加法 计数 双时钟74LS193二进制同步加/减法计数器的功能表如下表所示,74LS193是一个十六进制的计数器。

实验报告9答案

实验报告 课程名称:高级语言程序设计 实验九:函数与数组 班级: 学生姓名: 学号: 专业: 指导教师: 学期:2010-2011学年上学期 云南大学信息学院

一、实验目的 1、掌握数组作为参数的函数编写与调用方法 2、掌握数组作为参数的特殊性 3、掌握字符串作为参数的函数编写与调用方法 二、知识要点 1、地址传递的概念及使用 2、数组元素和数组名作为函数参数的特点与区别 3、字符串作为参数的特点:‘\0’字符的使用 三、实验预习(要求做实验前完成) 1、数组作为函数参数时,其特殊性是 2、定义作为参数的函数时,通常需要提供长度作为参数;而定义 作为参数的函数时,通常不需要提供长度参数 3、写出满足如下要求函数的函数首部: ①函数名为fmax,求一个实型数组的最大元素值: ②函数名为scount,求一个字符串中大写字母的个数: ③函数名为delf,删除一个字符串的第一个字符: 四、实验内容 1、编写一个函数,其功能是将字符串中的大写字母改为小写字母,其他字 符不变。 2、编写一个函数,求出给定的二维数组中每一行最大的元素,并显示出来。 3、在主函数中输入N个人的某门课程的成绩,分别用函数求:①平均分、最 高分和最低分;②分别统计90~100分的人数、80~89分的人数、70~ 79分的人数、60~69分的人数及59分以下的人数。结果在主函数中输出。 五、实验结果(要求写出运行界面及输出的运行结果) 六、实验小结

1.#include #include void change(char a[]) {int i; for(i=0;i='A'&&a[i]<='Z') a[i]+=32; } void main() {char c[30],k; printf("请输入一个包含大写字母的字符串:\n"); gets(c); change(c); puts(c); } 2.#include void max(int b[3][3]) {int i,j,max[3]; for(i=0;i<3;i++) max[i]=b[i][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(b[i][j]>max[i]) max[i]=b[i][j]; for(i=0;i<3;i++) printf("第%d行最大值为:%d\n",i+1,max[i]); printf("\n"); } void main() {int i,j,a[3][3]; printf("输入3行3列的数组:"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); printf("数组元素为:\n"); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); } max(a); } 3. #include

数据库原理与应用期末复习总结含试题及其答案

数据库原理综合习题答案 1.1名词解释 (1) DB:即数据库(Database),是统一管理的相关数据的集合。DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。 (2) DBMS:即数据库管理系统(Database Management System),是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。 (3) DBS:即数据库系统(Database System),是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。 (4) 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,那么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。 (5) 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。 (6) M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。 (7) 数据模型:模型是对现实世界的抽象。在数据库技术中,表示实体类型及实体类型间联系的模型称为“数据模型”。它可分为两种类型:概念数据模型和结构数据模型。 (6) 概念数据模型:是独门于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构。 (9) 结构数据模型:是直接面向数据库的逻辑结构,是现实世界的第二层抽象。这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。它主要有:层次、网状、关系三种模型。 (10) 层次模型:用树型结构表示实体类型及实体间联系的数据模型。 (11) 网状模型:用有向图结构表示实体类型及实体间联系的数据模型。 (12) 关系模型:是目前最流行的数据库模型。其主要特征是用二维表格结构表达实体集,用外鍵表示实体间联系。关系模型是由若干个关系模式组成的集合。 (13) 概念模式:是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。 (14) 外模式:是用户与数据库系统的接口,是用户用到的那部分数据的描述。 (15) 内模式:是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式,以及数据控制方面的细节。 (16) 模式/内模式映象:这个映象存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性,即概念记录和内部记录间的对应性。此映象一般在内模式中描述。 (17) 外模式/模式映象:这人映象存在于外部级和概念级之间,用于定义外模式和概念模式间的对应性,即外部记录和内部记录间的对应性。此映象都是在外模式中描述。 (18) 数据独立性:在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。 (19) 物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对模式的修改尽量不影响概念模式。

Excel 实验指导——函数的使用

实验八学生成绩表------数学函数、统计函数 一、实验目的 1、掌握数组公式、Sum()函数 2、掌握Averageif()和Sumif() 3、掌握COUNT()、COUNTA()、COUNTIF()、Countblank() 4、RANK.EQ 5、数据库函数的使用 二、实验内容 1、利用数组公式或Sum()函数来统计每个同学上学期的总分。 2、利用Averageif()和Sumif()统计平均分和总分。 3、利用统计函数统计班级人数,每门课程不及格人数,缺考科目数。 4、对班级同学的考试情况进行排名。 5、选择合适的数据库函数统计信息 三、实验任务 小王是班级学习委员,现正值新学期评优时期,班主任委托小王统计班级同学上学期的考试成绩情况。小王要应用函数分析学生信息、计算考试成绩,分析每科成绩的最高分、最低分和平均分,统计每个学生的总分排名,并统计不同寝室的学习情况。 本例效果图如图9- 1所示,小王需要完成的工作包括: (1)统计每个同学各门课程的总分并排名。 (2)统计每个寝室的平均分。 (3)统计每门课程的不及格人数和缺考人数。 (4)统计符合特定条件的学生信息。 图9- 1 学生成绩表效果图

9. 3 案例实现 9.3.1统计班级每个学生的考试总分 1.使用一般公式方法 公式是Excel工作表中进行数值计算的等式,公式输入是以“=”开始的,简单的公式有加、减、乘、除等计算。 我们可以在I3单元格中编辑公式,输入“=D3+E3+F3+G3+H3”,回车后即可,其他同学的总分可以通过填充柄拖动来求得。 2.数组公式计算总分 Excel中数组公式非常有用,尤其在不能使用工作表函数直接得到结果时,数组公式显得特别重要,它可建立产生多值或对一组值而不是单个值进行操作的公式。 输入数组公式首先必须选择用来存放结果的单元格区域(可以是一个单元格),在编辑栏输入公式,然后按Ctrl+Shift+Enter组合键锁定数组公式,Excel将在公式两边自动加上花括号“{}”。注意:不要自己键入花括号,否则,Excel认为输入的是一个正文标签。 利用数组公式计算I3:I32单元格的总分。选中I3:I32单元格,然后按下“=”键编辑加法公式计算总分,因为数组公式是对一组值进行操作,所以直接用鼠标选择D3:D32,按下“+”号,再用鼠标选择其余科目成绩依次累加,然后按Ctrl+Shift+Enter组合键完成数组公式的编辑,如图9- 2所示。 图9- 2 数组公式 在数组公式的编辑过程中,第一步选中I3:I32单元格尤为关键。绝不能开始只选中I3单元格,在最后用填充柄填充其他单元格,那样其他单元格的左上角将会出现绿色小三角,是错误的方法。 3.使用Sum()函数计算总分 Sum()求和函数,可以用来计算总分列。选择I3单元格,使用“公式”→“插入函数”或“自动求和”按钮,可选择Sum()函数,选中求和区域D3:H3,如图9- 3所示,按Enter 键,求和结果显示在单元格中。 通过填充操作完成其余各行总分的计算。

数据库原理及应用教案(北京联合大学优秀教案)

北京联合大学优秀教案评选 参赛教案 申报单位北京联合大学 参赛教师XXX 课程名称数据库原理及应用 授课章节第3讲第3节 参赛类别理工类 授课对象本科生 课程性质专业必修 授课时间2学时 北京联合大学教务处

、课程简介 在先修课“离散数学”、“数据结构”、“VB程序设计”,为本课程提供数学、算法、程序设计基础、程序设计语言和 Windows 应用程序开发工具的基础上,本课程主要讲授两大部分内容:一为“数据库系统概论” ,二为“ Microsoft SQL Server数据库管理系统”。本课程为后续课程“网络编程课程设计”、“软件系统基础”、“信息系统开发实习”提供数据库的概念、方法和技术基础。 本课程为信息与计算科学专业专业基础必修课。要求学生了解数据库系统的基本概念、基本结构和关系模型的基本概念;掌握数据库查询和操作方法;掌握数据库保护的基本技术;掌握关系数据理论的基本概念和基本理论;掌握数据库设计的基本步骤和方法。掌握使用Microsoft SQL Server关系数据库管理系统管理数据的方法,并结合Visual Basic设计开发简单的数据库应用系统。 二、单元教学目标 通过本单元的教学,使学生初步掌握标准SQL的查询语句结构,掌握简单查询、连表查询和嵌套查询的方法,并在 SQL Server 环境下应用各类查询语句,完成实际查询任务。 1、知识层面 (1)掌握标准 SQL 的查询语句结构; (2)掌握简单查询,连表查询,嵌套查询的方法。 2、能力层面 (1)分析查询需求,选择应用合适的查询语句,解决实际查询问题; (2)在 SQL Server 环境下,实现各类查询,分析查询结果,分析查询执行错误的原因并找出和实践解决办法。 3、思维层面进一步训练逻辑思维能力。 三、单元教学内容 本单元主要介绍标准SQL及SQL Serve环境下SQL的数据查询功能(DQL)。 1、认识数据库查询;( 5分钟) 2、示例数据库的结构;(2分钟) 3、标准 SQL 的查询语句结构,包括: FROM、 WHERE 、 SELECT、 GROUP BY、HAVING 、 ORDER BY 子句;(5分钟) 4、简单查询,包括:浏览查询,投影查询,选取查询(带IN、BETWEEN 、LIKE、IS NULL运算符及一般比较运算符的查询),SELECT子句带表达式的查

数据库原理与应用(第四版)

数据库 一、选择题30’ 二、填空题20’涉及内容:C1,C2,C3,C7概念为主。其余章节少量涉及。 三、问答题20’(4*5’) 1.论述数据、数据库、数据库管理系统、数据库系统的概念; 数据:描述事物的符号记录。是数据库中存储的基本对象。 种类:文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等 特点:数据与其语义是不可分的 数据库:长期储存在计算机内、有组织的、可共享的大量数据的集合。 基本特征: ?数据按一定的数据模型组织、描述和储存 ?可为各种用户共享 ?冗余度较小 ?数据独立性较高 ?易扩展 数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件,是基础软件, 是一个大型复杂的软件系统。 用途:科学地组织和存储数据、高效地获取和维护数据 数据库系统:在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 2.数据库系统的特点 ?数据结构化 整体结构化 不再仅仅针对某一个应用,而是面向全组织 不仅数据内部结构化,整体是结构化的,数据之间具有联系 数据库中实现的是数据的真正结构化 数据的结构用数据模型描述,无需程序定义和解释 数据可以变长 数据的最小存取单位是数据项 ?数据的共享性高,冗余度低,易扩充 数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。 数据共享的好处 减少数据冗余,节约存储空间 避免数据之间的不相容性与不一致性 使系统易于扩充 ?数据独立性高 物理独立性 指用户应用程序与存储在磁盘上的数据库中数据是相互独立的。 当数据的物理存储改变了,应用程序不用改变。

实验十函数应用答案

实验十函数应用 一?实验目的 1.掌握函数的定义和调用; 2.理解形参和实参的使用和传值调用; 3.理解函数声明的使用; 4.掌握函数的嵌套调用; 5.了解函数的嵌套与递归调用,掌握递归函数的编写规律; 6.了解数组元素、数组名作函数参数。 二?实验学时数 2学时 三?实验步骤 (一)阅读程序 1.#include int fun (int x, int y, int z) { z=x * x + y * y; } main() { int a=38; fun(7,3,a); printf("%d",a); 2.#include void fun (int x,int y ); main() {int x=5,y=3; fun(x,y); printf("%d,%d\n",x,y); } void fun (int x,int y ) { x=x+y; y=x-y;

x=x-y; printf("%d,%d\n",x,y); 3.#include int f (int a); main() { int s[ 8 ] = {1,2,3,4,5,6} ,i, d=0; for (i=0; f( s[i] ) ; i++) d+=s[i]; printf("%d\n",d); } int f(int a) { return a%2; } 4.#include long f( int g) { switch(g) { case 0:return 0; case 1: case 2: return 1; } return ( f(g-1)+ f(g-2)); } main ( ) { long int k; k = f(7); printf("\nk= %d\n",k); }

相关文档
最新文档