大学计算机--计算思维的视角-郝兴伟-34833-00DaJiU05--计算机程序_第1页
大学计算机--计算思维的视角-郝兴伟-34833-00DaJiU05--计算机程序_第2页
大学计算机--计算思维的视角-郝兴伟-34833-00DaJiU05--计算机程序_第3页
大学计算机--计算思维的视角-郝兴伟-34833-00DaJiU05--计算机程序_第4页
大学计算机--计算思维的视角-郝兴伟-34833-00DaJiU05--计算机程序_第5页
已阅读5页,还剩123页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大学计算机-计算的思想和方法,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,2,课程简介,课程定位核心通识课,计算机基础教学公共核心基础课程授课对象非计算机专业本科生教学目标深入理解计算科学在科学研究和知识创新中的地位和作用。全面培养个人的信息素养和计算思维能力。了解计算发展的基本过程,理解发展中的主要发明掌握问题求解的一般思想和方法,理解常用的问题求解算法。理解数据的概念,理解数据结构的含义和作用理解计算机程序、计算机程序设计语言的概念,理解程序编写和程序运行的基本内涵理解通信和计算机网路的思想,了解常用的网络设备及其功能,理解主要的互联网应用了解目前计算机学科的发展前沿,体会学科交叉在科研中的价值和意义,第1章绪论第2章计算与计算机第3章问题求解与算法第4章数据与数据结构第5章计算机程序第6章计算机网络第7章计算科学前沿,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,3,第5章计算机程序,5.1计算机程序概述5.2C/C+程序设计语言5.3类与对象5.4数据存储与管理5.5Web应用,知识要点计算机程序,编译型程序,解释型程序,计算机程序设计语言,机器语言汇编语言高级语言软件开发环境,程序编译,程序连接,函数库,动态连接库(DLL),大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,4,U5.1计算机程序概述,计算机程序及其分类程序设计语言程序设计语言的分类程序设计语言与编程思想常见计算机程序设计语言计算机软件系统开发,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,5,计算机程序及其分类,计算机程序,是指用户为了达到某种目的而编写的可以控制计算机运行的一组指令序列。程序的分类按源程序能否直接运行分类解释型程序编译型程序按程序运行环境分类Dos程序、Windows程序、Unix程序、Linux程序,以及MacOS程序,Android程序等虚拟机运行环境,如Java程序Web程序,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,6,程序设计语言,程序设计语言(ProgrammingLanguage),就是用于编写计算机程序的语言,由一组基本符号和一组语法规则构成。基本符号定义了程序中能够出现的字符和词汇,并赋予它们特定的含义。语法规则定义了构成程序的基本符号、符号之间的组合规则,这些规则可以描述数据及其操作,以及各种程序语句及程序流程控制。程序设计语言的分类机器语言汇编语言高级语言,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,7,程序设计语言与编程思想,软件危机,20世纪60年代末,出现了软件工程的概念结构化编程思想如果问题比较复杂,将问题分解为几个相对简单的子问题,如果某个子问题还比较复杂,进一步划分,直到分解后的每个问题都是相对简单的。1970年,出现了第一个结构化程序设计语言Pascal。面向对象编程(ObjectOrientedProgramming,OOP)20世纪80年代数据和操作的封装,消息映射在事件和函数之间进行关联降低了函数的偶合度,提高系统的可扩充性和代码重用的层次,极大的增强了软件系统的可扩展性和灵活性。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,8,高级程序设计语言的发展,1951年,美国IBM公司的约翰贝克斯1针对汇编语言的缺点着手研究开发一种新的计算机程序设计语言,这就是FORTRAN语言LISP语言(1958年)、ALGOL语言(1958年)、COBOL语言(1959年),Basic(1964)20世纪70年代Pascal(1971)C语言(1972年)、Smalltalk语言(1972年)、Prolog语言(1972年)20世纪80年代C+语言(1980年)Ada语言(1983年)Perl(1987)20世纪90年代Python(1991年)、可视化编程语言VisualBasic(1991年)、具有跨平台特征的面向对象语言Java(1995年)、Delphi(1995年)、C#(2001年),大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,9,常见计算机程序设计语言,编程语言流行度的评估,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,10,计算机软件系统开发,软件开发的基本步骤需求分析系统设计,包括功能设计、用户界面设计、算法设计、数据库设计等系统实施系统测试运行和维护软件开发环境语言规范,编译器库编辑器、编译、连接、调试,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,11,程序的编译连接和运行,编译型计算机程序开发过程,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,12,第5章计算机程序,5.1计算机程序概述5.2C/C+程序设计语言5.3类与对象5.4数据存储与管理5.5Web应用,知识要点c语言,c程序结构,c语言字符集,转义字符,关键字(保留字),标识符,数据类型,定点数,浮点数,运算符,表达式,赋值语句,输入/输出语句,分支语句,重复语句,构造类型,类型定义,结构化编程,函数,局部变量,全局变量。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,13,U5.2C/C+程序设计语言,C语言及C程序结构C语言基本符号数据与数据类型运算符与表达式赋值语句和输入/输出分支语句循环控制语句函数,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,14,高级程序设计语言的发展,1950年代由JohnBackus领导的一个小组研制的FORTRAN语言,从此揭开了计算机高级程序设计语言发展的序幕。20世纪50年代后期,ALGOL语言、COBOL语言相继问世在60年代的十年间,人们研制了多达200种的高级程序设计语言,包括Basic20世纪70年代,Pascal语言问世在Pascal基础上,Ada语言问世,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,15,C语言的产生和发展,在ALGOL60的基础上,1963年英国剑桥大学推出了CPL(CombinedProgrammingLangurage)语言1970年美国贝尔实验室的肯汤普逊以BCPL语言为基础,作了进一步的简化,设计出了简单且接近硬件的B语言(取BCPL的第一个字母),并用B语言写出了第一个UNIX操作系统。1972年至1973年间,美国贝尔实验室的丹尼斯里奇(DennisRitchie)在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,16,KenThompson,肯汤普逊(KennethLaneThompson,1943年2月4日),一般称之为KenThompson,为美国计算机科学学者,与丹尼斯里奇共同发明了Unix和C语言,于1983年共同获得图灵奖,理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。后门,装了UNIX的PDP-11最早被安装在BellLab里供大家日常使用。BellLab里的科学家发现Ken总是具有最高权限,分析了UNIX代码,找到后门,修改代码,然后重新编译了整个UNIX。他们发现Ken还是轻而易举地拿到他们的帐户权限。14年,直到Ken道出个中缘由。原来,代码里的确有后门,但后门不在Unix代码里,而在编译Unix代码的C编译器里。每次C编译器编译UNIX的代码,就自动生成后门代码。而整个BellLab的人,都是用Ken的C编译器,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,17,DennisRitchie,丹尼斯里奇(DennisRitchie,1941年9月9日2011年10月9日),美国计算机科学家,对C语言和其他编程语言、Multics和Unix等操作系统的发展做出了巨大贡献,1983年同KenThompson一起获得图灵奖。1978年与布莱恩科尔尼干(BrianW.Kernighan)一起出版了名著TheCProgrammingLanguage,成为C语言方面最权威的教材之一。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,18,C程序结构,一个简单的C程序#include/计算一个正整数n的阶乘,并返回该阶乘intfact(intn)inti,res=1;for(i=1;i=,charch;scanf(%d%d%c,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,47,分支语句(2),ifelse语句一般形式if();else;逻辑功能,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,48,分支语句(3),switch语句一般形式switch()case表达式1:语句1;break;case表达式2:语句2;break;case表达式n:语句n;break;default:语句n+1;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,49,例5-2b,scanf(%d%d%c,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,50,条件运算符,条件运算符(?:)表达式1?表达式2:表达式3逻辑功能计算表达式1的值,如果为真,则条件表达式取表达式2的值,否则取表达式3的值例如if(ab)min=a;elsemin=b;可以写成下面的条件表达式:min=(ab)?a:b,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,51,循环控制语句(1),while语句一般形式while();逻辑功能,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,52,例5-3,输入一个正整数,计算正整数的位数。#includevoidmain(void)intx,width=0;scanf(%d,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,53,循环控制语句(2),do-while语句一般形式do语句(循环体)while();逻辑功能,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,54,例5-4,输入一串十六进制字符(09,af)计算对应的十进制值,并输出。#includevoidmain(void)charch;intx=0;doscanf(%c,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,55,循环控制语句(3),for语句一般形式for(表达式1;表达式2;表达式3);执行过程(1)计算表达式1。(2)计算表达式2,如果为真,则执行循环体,然后转步骤(3)。否则,结束循环。(3)计算表达式3(4)无条件转步骤(2)(5)循环结束,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,56,例5-5,输出杨辉三角形前10行的内容分析(1)第i行有i个数字。(2)对于每一行的第一个和最后一个数均为1,其他的任何一个数等于上一行对应的数和前面数的和。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,57,程序代码,#includevoidmain(void)inta10;/存储杨晖三角的每一行数字for(inti=1;i1;j-)aj-1=aj-2+aj-1;for(j=1;j=i;j+)printf(%4d,aj-1);printf(n);,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,58,例5-6,问题分析,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,59,程序代码,#includemain()floatx,t=1,sum=0;intn;scanf(%f%d,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,60,其他控制语句,break语句用于跳出最近的循环continue语句跳过本次循环中下面尚未执行的语句,接着进入下一次是否执行循环的判断,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,61,例5-7,输入一系列正整数,分别计算正数和负数的和,输入0结束。#includemain()intx,sum1=0,sum2=0;while(1)scanf(%d,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,62,函数,结构化编程函数定义的一般形式类型标识符函数名(形式参数表)声明部分语句部分说明返回值,return语句,void函数名形式参数声明部分语句部分,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,63,函数调用,一般形式函数名()函数调用的一般过程(1)参数传递,在进入函数前,根据函数定义,首先为函数的形式参数分配临时内存空间。然后,对于函数中的每一个形式参数,分别将对应的实际参数的值或地址赋给形式参数。如果形式参数为指针类型,则对应的实际参数必须为变量,此时,将实际参数的地址赋给形式参数;如果形式参数不是指针,则将对应的实际参数的值赋给形式参数。(2)申请局部变量,参数传递完成后,进入函数内部,如果函数包含局部变量声明,则为每一个局部变量分配临时内存空间。(3)执行函数的语句部分,当为函数的局部变量分配空间结束后,接下来开始执行函数的语句部分。(4)当函数的语句部分执行结束后,释放进入函数时所申请的所有临时变量空间,这包括形式参数和局部变量两个部分。(5)函数执行结束,返回函数调用语句的下面一条语句,继续执行下面的语句。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,64,例5-8,编写一个C函数,判断一个数是否为素数。如果是素数,返回1,否则返回0。分析,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,65,代码清单,intprime(intx)inti,isprime=1;if(x=1)return0;for(i=2;ix-1;i+)if(x%i=0)isprime=0;break;returnisprime;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,66,局部变量和全局变量,局部变量在函数内部定义的变量,只在函数内部使用变量声明也可以出现在语句块(在内)中,此时变量的有效范围为其所在的语句块,离开该语句块,变量所占内存单元被释放。全局变量在函数的外部可以定义变量全局变量的有效范围是从定义变量的位置到文件结束。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,67,例5-9:函数、局部变量和全局变量示例,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,68,变量的存储类别,从变量值(所占空间)存在的时间上讲,变量的存储方法分成静态存储和动态存储两大类,四个类别,分别是auto,static,register和extern。auto变量。函数中的局部变量,如不特别声明为static,即为自动(auto)变量。static变量。如果希望局部变量的值在函数调用结束后仍然存在,即局部变量所占的存储单元不被释放。register变量。无论是auto还是static变量,数据都存储在内存中。当程序使用该变量时,控制器通过机器指令将数据传到运算器,运算结束数据被送回内存储器。extern变量。外部变量(全局变量)是在函数外部定义的变量,其作用域是从变量的定义处开始直到文件的结束。extern类型名外部变量名;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,69,第5章计算机程序,5.1计算机程序概述5.2C/C+程序设计语言5.3类与对象5.4数据存储与管理5.5Web应用,知识要点面向对象的思维方式,类,对象,成员变量(属性),成员函数(方法),构造函数,析构函数,基类,派生类,面向对象编程。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,70,U5.3类与对象,面向对象的思维方式类及其定义类的继承性与派生类对象的创建及操作,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,71,面向对象的思维方式,建立了类和对象的概念自然界中的物理对象软件对象通过消息映射在事件和函数之间进行关联,函数之间的联系不再是显式的调用,降低了函数的偶合度。对于复杂系统面向对象技术可以提高系统的可扩充性和代码重用的层次,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,72,类及其定义,类(Class)是包含数据和处理这些数据的过程的数据结构。类的定义classprivate:成员变量和成员函数;public:成员变量和成员函数;protected:成员变量和成员函数;;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,73,成员访问级别,(1)关键词public,声明成员为公有(public)成员。类中所有public成员构成类的接口,它们是类的抽象性的表现。(2)关键词private,声明成员为私有(private)成员。类中的private成员只能被类的成员函数、友元类或外部友元函数访问。从而实现类的封装性。在默认状态下,所有的成员都是私有的。(3)关键词protected,声明成员为保护型(protected)成员。在面向对象技术中,派生是类的重要性质。类的private成员将不能被派生类中的成员访问,这就大大限制了类的灵活性。类的protected成员可以被类的派生类成员访问。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,74,成员变量与成员函数,成员变量,用于说明一个类的属性,它存储了类对象中涉及的数据。成员函数,定义了对类中成员变量的的操作,又称方法。构造函数(Constructor)一种特殊的成员函数,用来在内存中建立具体的对象。用于申请内存空间,将内存转化为具体的对象,初始化成员变量等。构造函数的名称和类名称相同,有默认构造函数和用户自定义构造函数两类,默认构造函数没有形式参数。用户可以定义一个或多个具有不同参数的用户自定义构造函数。构造函数也不是由用户显式调用(Call)当创建一个类对象时,默认构造函数或相应的构造函数被自动执行析构函数(Destructor)一种当对象取消时才被调用的特殊成员函数。每个类只能拥有一个析构函数,函数名为在类名前加一字符“”。当操作系统释放对象时,类的析构函数激活,通常是执行释放对象所占的内存空间等操作。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,75,例5-10定义一个学生类CStudent,classCStudentprivate:charmyname15;floatmyheight;public:intmyid;public:CStudent();/默认构造函数CStudent(char*name,intheight);/用户自定义构造函数voidSetInfo(char*name,floatheight);voidGetInfo();CStudent();/析构函数对于类CStudent的成员函数,定义如下:,CStudent:CStudent(char*name,floatheight)strcpy(myname,name);myheight=height;voidCStudent:SetInfo(char*name,floatheight)strcpy(myname,name);myheight=height;/voidCStudent:GetInfo()cout姓名:myname身高:myheightendl;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,76,VC+中类的定义举例,VC+开发环境,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,77,类的继承性与派生类,事物之间存在层次关系例如:动物、哺乳动物之间,交通工具、和飞机、火车、轿车之间,都存在层次关系继承,就是在已有类基础上,建立一种新的类型,使它继承原有类的特点和功能。基类(Baseclass),已存在的用来派生新类的类派生类,由已存在的类派生出的新类从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,78,单继承,定义格式class:;继承方式public(公有派生)private(私有派生)protected(保护派生)派生类可以对基类作如下变化增加新的成员变量增加新的成员函数重新定义已有的成员函数改变现有成员函数的属性例如classB:publicA/派生类B的成员说明;,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,79,基类和派生类成员访问特性,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,80,对象及其创建,对象(Object)是用类来声明的数据结构,如果将类比作数据类型,对象就是相应数据类型的变量。对象的创建一般对象;通过new函数来动态创建类属对象例如CStudents1;/创建一个CStudent类对象s1,调用默认构造函数CStudents2(Jane,167);/创建一个CStudent类对象s2,调用自定义构造函数,对姓名和身高初始化CStudent*sptr;/创建一个指向类对象的指针,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,81,对象成员的访问,一般形式.;访问类成员的方式由成员的属性决定(public,private,pritected)例如s1.myid=20090323;s1.myheight=165;/height为私有成员变量,不能通过外部直接访问sptr=,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,82,第5章计算机程序,5.1计算机程序概述5.2C/C+程序设计语言5.3类与对象5.4数据存储与管理5.5Web应用,知识要点文件,文本文件,二进制文件,数据库,数据表,数据库管理系统(DBMS),结构化查询语言(SQL),T-SQL,数据查询,聚合查询,分组查询,连接查询(多表查询),数据更新。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,83,U5.4数据存储与管理,数据文件及其操作数据库与数据库管理系统数据管理的发展数据库管理系统数据库数据模型中的有关概念结构化查询语言SQL数据查询数据的插入修改数据记录删除数据记录,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,84,数据文件,文件管理是操作系统的主要功能文件分类文本文件是指由若干行字符文本构成的文件,每一行有一系列的字符组成。字符编码,存储的是每一个字符的字符编码二进制文件指按照特定的数据类型来存储数据的二进制值,而不是每个字符的字符编码。举例存储整数123,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,85,文件操作,ANSIC有关文件操作,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,86,例5-11文本文件操作,从键盘输入一系列数字,将这些数字保存到C盘根目录下的文件“mydata1.dat”中#include#includevoidmain(void)FILE*fp;intx;/打开一个文本文件准备写fp=fopen(c:mydata1.dat,w);if(fp=NULL)printf(cantcreatefile.);exit(0);/程序正常退出,for(inti=1;i=5;i+)scanf(%d,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,87,例5-12二进制文件操作示例,从键盘输入5个员工数据,将用户输入数据保存到一个磁盘文件“employee.dat”中。#include#defineMAXNUM10typedefstructecharID18;charname10;intage;floatsalary;EmployTypeemployee_listsMAXNUM;,/保存文件函数voidsave(intnum)File*fp;inti;if(fp=fopen(employee.dat,wb)=NULL)/以只写方式打开一个二进制文件printf(contopenfile);exit(0);for(i=0;i=2,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,111,连接查询,若一个查询同时涉及两个或两个以上的表,并且每一个表中的数据往往作为一个单独的列出现在结果集中,则称之为连接查询。指定多表连接查询是通过FROM子句实现,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,112,连接方式,交叉连接交叉连接不使用任何连接条件来限制结果集合,而是对两个数据源中的行以所有可能的方式进行组合,也就是做广义笛卡儿积。交叉连接在查询结果集中,包含了所连接的两个表中所有行的全部组合,其结果的行数等于两个表行数之积,列数等于两个表列数之和。交叉连接一般没有有意义的语义,实际中应用不多,但是交叉连接是理解内连接和外连接的基础。交叉连接不能有条件,且不能带WHERE子句。内连接外连接,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,113,内连接,内连接是用比较运算符比较表中列值,返回符合连接条件的数据行,从而将两个表连接成一个新表。等值连接例如:查询工商系有选课记录的学生的全部信息以及他们的选课信息。SELECTstudent.*,sc.*FROMstudent,scWHEREstudent.sdept=N工商系ANDstudent.sno=sc.sno自然连接。若在等值连接中,把目标列中重复的字段去掉则称为自然连接,它是一种特殊的等值连接。非等值连接。表之间的连接,如果使用除了“”之外的连接符连接起来的查询称为非等值连接。自连接。连接可以是一个表与其自身进行的,这样的连接称为自连接。要求根据课程信息查询每门课的间接先行课(即先行课的先行课)SELECTA.cno,A.cname,B.pre_cnoFROMcourseasA,courseasBWHEREA.pre_cno=B.cno,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,114,外连接,实际需求外连接只能用于两个表中。两个表有主次之分,以主表的每行数据去匹配从表的数据列,符合连接条件的数据将直接返回到结果集中,对那些不符合连接条件的列将被赋予NULL值后再返回到结果集中。根据两个表的主次关系,外连接分为左外连接、右外连接、完全外连接。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,115,查询结果输出,可以使用INTO子句将查询后的数据存储到一个新的表中可以将结果集存储到当前数据库的基本表中,也可以存储到一个临时数据表中SELECT*INTOstudent-gsFROMstudentWHEREsdept=N工商系如果查询结果存储到临时表中,则需要在表名前加“#”字符。临时表不存储在当前数据库内,而是存储在系统数据库tempdb内,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,116,插入数据记录,插入一条记录INSERTINTOdatabase_name.(,n)VALUES(,n)举例INSERTINTOstudent(sno,sname)VALUES(201125011001,N许宏)插入子查询结果INSERTINTOdatabase_name.(,n)SELECT,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,117,修改数据记录,使用UPDATE语句更新表中已经存在的数据。UPDATE语句可以一次更新一行数据、多行数据,甚至可以一次更新表中的全部数据行。UPDATE语句的语法格式UPDATEdatabase_name.SET=,nWHERE,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,118,例5-15,修改student表中的数据,将201125011001号同学的名字改为“许小雅”,性别改为“女”,成绩加10分。UPDATEstudentSETsname=N许小雅,sname=N女,grade=grade+10WHEREsno=201125011001,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,119,删除数据记录,使用DELETE语句可以从表中删除一行或多行记录。DELETE命令的语法DELETEFROMdatabase_name.WHERE举例删除student数据表中2008级所有学生的记录,语句为:DELETEFROMstudentWHEREsnoLIKE20080-90-9%,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,120,第5章计算机程序,5.1计算机程序概述5.2C/C+程序设计语言5.3类与对象5.4数据存储与管理5.5Web应用,知识要点客户/服务器(C/S)计算模式,终端网络,浏览器/服务器(B/S)计算模式,Web应用,Web应用与传统程序的区别。,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,121,U5.4数据存储与管理,计算机应用模式的演变集中式计算模式客户/服务器(C/S)计算模式浏览器/服务器(B/S)计算模式Web应用及其优势,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,122,计算机应用模式的演变(1),集中式计算模式,20世纪70年代以前国军方建立的半自动地面防空系统SAGE(Semi-AutomaticGroundEnvironment)计算机与通信网络结合的开始后来被看作是终端网络,大学计算机计算的思想和方法(第3版),郝兴伟编著.北京:高等教育出版社,123,计算机应用模式的演变(2),客户/服务器(C/S)计算模式,20世纪80年代C/S模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论