《c语言概述课件》由会员分享,可在线阅读,更多相关《c语言概述课件(29页珍藏版)》请在金锄头文库上搜索。
1、第一讲第一讲 概述概述教材教材:C程序设计导论程序设计导论1c语言概述课件教材与课件教材与课件n教材:教材:C程序设计导论,谭成予、梁意文,程序设计导论,谭成予、梁意文,武汉大学出版社,武汉大学出版社,2005年。年。n参考书目:参考书目:The C Programming Language,B.W.Kernighan and D.M.Ritchie,Prentice-Hall,Inc.,1978。n课件:武汉大学计算机学院课件:武汉大学计算机学院“高级语言程序设计高级语言程序设计”课程组制作。课程组制作。2c语言概述课件第一个问题:什么是第一个问题:什么是程序设计程序设计?n程程序序(pro
2、gram)(program)就就是是指指示示计计算算机机如如何何运运作作的的指指令令集集合。合。n程程序序设设计计(programming)(programming)则则是是把把多多条条指指令令有有计计划划地地串串在在一一起起使使计计算算机机完完成成我我们们期期望望的的工工作作,换换句句话话说说,程程序序设设计计是是将将人人的的期期望望“转转化化”成成一一连连串串的的计计算算机机指指令令,如如果果转转化化成成功功,计计算算机机就就会会按按照照我我们们的的期期望望来运作,感觉就好像成功地对计算机施展了魔法。来运作,感觉就好像成功地对计算机施展了魔法。n学习程序设计好处学习程序设计好处深入了解软件
3、的运作方式、设计出功能更强大的应深入了解软件的运作方式、设计出功能更强大的应用软件、加深对计算机的认识。用软件、加深对计算机的认识。3c语言概述课件第二个问题:如何学好程序设计第二个问题:如何学好程序设计语法学习阶语法学习阶段段循循 序序 渐渐 进进练习写较大练习写较大的程序的程序学习并提高学习并提高程序设计技程序设计技巧巧软件工程软件工程软件工程:运用现代科学技术知识来设计并构造计算机程序,以及为开发、运行软件工程:运用现代科学技术知识来设计并构造计算机程序,以及为开发、运行和维护这些程序所必须的相关文档资料。和维护这些程序所必须的相关文档资料。4c语言概述课件现在有哪些程序设计语言?现在有
4、哪些程序设计语言?n第一代语言第一代语言机器语言机器语言 计算机发明之初,人们只能用计算机的语言去命令计算机工作,就是写出计算机发明之初,人们只能用计算机的语言去命令计算机工作,就是写出一串串由一串串由“0”“0”和和“1”“1”这样的二进制数组成的指令序列交由计算机执行,这这样的二进制数组成的指令序列交由计算机执行,这种语言就是机器语言。使用机器语言是十分痛苦的,尤其是在程序有错需要种语言就是机器语言。使用机器语言是十分痛苦的,尤其是在程序有错需要修改时。而且,由于每台计算机的指令系统往往各不相同,所以移植性很差。修改时。而且,由于每台计算机的指令系统往往各不相同,所以移植性很差。但由于使用
5、的是针对特定型号计算机的语言,故而运算效率是所有语言中最但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。高的。n第二代语言第二代语言汇编语言汇编语言 为了减轻使用机器语言编程的痛苦,人们进行了有益的改进:用一些简洁为了减轻使用机器语言编程的痛苦,人们进行了有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令,比如,用的英文字母、符号串来替代一个特定的指令,比如,用“ADD”“ADD”代表加法,代表加法,“MOV”“MOV”代表数据传递等等,这种程序设计语言就称为汇编语言。然而计算机代表数据传递等等,这种程序设计语言就称为汇编语言。然而计算机是不认识这些符号的,这
6、就需要一个专门的程序,负责将这些符号翻译成二是不认识这些符号的,这就需要一个专门的程序,负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。进制数的机器语言,这种翻译程序被称为汇编程序。5c语言概述课件现在有哪些程序设计语言?现在有哪些程序设计语言?n第三代语言第三代语言高级语言高级语言 高级语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,高级语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。编出的程序能在所有机器上通用。FORTRAN(Formula Translation,1956年)年)LISP(List Process
7、ing Language,1958年)年)COBOL(Common Business Oriented Language,1959年)年)BASIC(Beginners all Purpose Symbolic Instruction Code,1964年)年)PASCAL(以法国数学家命名,(以法国数学家命名,1970年)年)PROLOG(Programming in Logic,1972年)年)C(1972年)年)n第四代语言第四代语言 非过程化,面向应用非过程化,面向应用 ,面向对象语言及可视化编程环境,如,面向对象语言及可视化编程环境,如VisualVisual系列系列(VC+VC+、
8、VBVB等)、等)、Power BuilderPower Builder、DelphiDelphi、JavaJava等。等。6c语言概述课件本课程定位本课程定位 n大家要学习的与程序设计有关的课程有:高级语言大家要学习的与程序设计有关的课程有:高级语言程序设计、面向对象程序设计等。程序设计、面向对象程序设计等。n本课程以高级语言中的本课程以高级语言中的C语言为主介绍如何使用第三语言为主介绍如何使用第三代语言代语言高级语言进行程序设计,要求同学们不仅高级语言进行程序设计,要求同学们不仅学习好具体的语法规范,更重要的是掌握结构化程序学习好具体的语法规范,更重要的是掌握结构化程序设计的方法。设计的方
9、法。n本课程是同学们接触到的第一门程序设计的课程,本课程是同学们接触到的第一门程序设计的课程,不仅是程序设计的入门课程,而且是学习后续程序设不仅是程序设计的入门课程,而且是学习后续程序设计(如面向对象程序设计)等其他计算机专业课程的计(如面向对象程序设计)等其他计算机专业课程的基础和前导课程。基础和前导课程。7c语言概述课件本讲重点本讲重点n了解了解C语言的历史、背景语言的历史、背景n熟悉简单的熟悉简单的C程序的构成程序的构成nWindows和和UNIX环境下编辑、编译和运行环境下编辑、编译和运行C程序的方法程序的方法8c语言概述课件1.1 语言的发展历史和特点语言的发展历史和特点语言的出现的
10、历史背景语言的出现的历史背景(不宜编写系统(不宜编写系统程序,程序,1960年)年)ALGOLBCPL(对(对CPL的简化,的简化,M .Richard,剑桥,剑桥大学,大学,1967年)年)B(编写了(编写了UNIX操作系统,操作系统,K.Thompson,贝尔实验,贝尔实验室室1970年)年)CPL(规模较大,(规模较大,难以实现,剑难以实现,剑桥大学和伦敦桥大学和伦敦大学,大学,1963年)年)C(描述和实现(描述和实现UNIX操作操作系统,系统,D.M.Ritchie,贝,贝尔实验室,尔实验室,1972年)年)9c语言概述课件经典经典 The C Programming Languag
11、e 1978年,年,B.W.Kernighan、D.M.Ritchie合著合著 1988年进行修订使之符合年进行修订使之符合ANSI C标准。标准。ANSI C 1983年,由年,由ANSI(American National Standards Institute)制制订订C语言标准。语言标准。标准标准C 1990年,年,ISO(International Standard Organization)通过通过C程程序设计语言的国际标准,以序设计语言的国际标准,以ANSI C为基础制订。为基础制订。10c语言概述课件C语言的特点语言的特点1.语言简洁、紧凑,使用方便:语言简洁、紧凑,使用方便:
12、32个关键字,个关键字,9种控制语句。种控制语句。 2.运算符丰富:运算符丰富:共有共有34个运算符。个运算符。3.数据结构丰富:数据结构丰富:整型,实型,字符,数组,指针,结构体等。整型,实型,字符,数组,指针,结构体等。4.具有结构化的控制语句:具有结构化的控制语句:代码及数据的分割,函数的调用,控代码及数据的分割,函数的调用,控制程序流向的循环与条件语句。制程序流向的循环与条件语句。5.语法限制不太严格,程序设计自由度大。语法限制不太严格,程序设计自由度大。6.允许直接访问物理地址,能进行位操作,可以直接操作硬件。允许直接访问物理地址,能进行位操作,可以直接操作硬件。7.生成目标代码质量
13、高,程序执行效率高生成目标代码质量高,程序执行效率高:一般只比汇编程序生一般只比汇编程序生成的目标代码效率低成的目标代码效率低101020%20%。8.程序可移植性好:程序可移植性好:适合于多种操作系统,多种机型。适合于多种操作系统,多种机型。11c语言概述课件1.2 C程序组成程序组成学好一种计算机语言的最好方法是用它编写程序!学好一种计算机语言的最好方法是用它编写程序!例例1. 1一个经典的例子。一个经典的例子。#include void main(void)printf(“Hello!World!n”);将上述程序输入计算机,进行编译、连接、运行后在屏幕上输出:将上述程序输入计算机,进行
14、编译、连接、运行后在屏幕上输出:Hello!World!函数首部,函数名称函数首部,函数名称main( ),即主函数,即主函数圆括号内定义函数参数,圆括号内定义函数参数,void表示没有参数表示没有参数 函数类型(返回结果),函数类型(返回结果),void表示没有返回值表示没有返回值 12c语言概述课件1.2 C程序组成程序组成例例1.2 计算两个整数的和计算两个整数的和 #include int main( ) int a,b,sum;a=45;b=70;sum=a+b;printf(“sum=%dn”,sum);return(0); 该程序运行结果为该程序运行结果为 sum=115文件包含
15、行,表示程序中用到了文件包含行,表示程序中用到了stdio.h文件中文件中定义的常量或宏定义的常量或宏函数体,包括数据说明和执行语句两个部分函数体,包括数据说明和执行语句两个部分“”表示函数体结束表示函数体结束“”表示函数体开始表示函数体开始13c语言概述课件例例1.3 输出两个整数中大的数据。输出两个整数中大的数据。#include void main(void) int max(int,int); int a,b,c; scanf(“%d,%d”,&a,&b); c=max(a,b); printf(“max=%d”,c); int max(int x, int y) int z; if(
16、xy) z=x; else z=y; return(z); 运行结果:运行结果:21,45 max=45函数原型。由于函数函数原型。由于函数max在主函数之后定义,所以在主在主函数之后定义,所以在主函数前要给出函数前要给出max函数的使用说明即函数原型。函数的使用说明即函数原型。主函数没有返回值,所以类型是主函数没有返回值,所以类型是void调用函数调用函数max,计算变量,计算变量a和和b的最大值,并将结的最大值,并将结果赋给变量果赋给变量c函数函数max首行,其中定义首行,其中定义int类型的形式参数类型的形式参数x和和y 。该函数返回结果为。该函数返回结果为int类型类型将变量将变量z的
17、值返回给的值返回给main函数函数14c语言概述课件1.2 C程序组成程序组成例1.4 求数组元素的和。#include void main(void)int i,a5=4,5,6,7,8,sum=0;for(i=0;iTCTurbo C开始运行后,出现下图所示的主菜单窗口开始运行后,出现下图所示的主菜单窗口20c语言概述课件21c语言概述课件Visual C+ 6.0Visual C+ 6.0集成环境集成环境集成环境集成环境1. 启动Visual C+ 6.0环境2. 编辑源程序文件3. 编译和连接4. 执行 利用Visual C+ 6.0集成环境开发C程序的过程如下:22c语言概述课件Vi
18、sual C+ 6.0Visual C+ 6.0集成环境集成环境集成环境集成环境 1.启动Visual C+ 6.0环境 方法:单击 “开始”-“程序”-“Microsoft Visual studio 6.0”-“Microsoft Visual C+ 6.0”命令,启动Visual C+,VC6主窗口如下:菜单栏菜单栏项目工作区项目工作区标题栏标题栏输出区输出区工具栏工具栏状态栏状态栏文件编辑区文件编辑区23c语言概述课件Visual C+ 6.0Visual C+ 6.0集成环境集成环境集成环境集成环境2. 编辑源程序文件(1)建立新工程项目单击“文件”-“新建”,弹出“新建”对话框。单
19、击“工程”选项卡;单击“Win32 Console Application”选项;“工程”对话框中输入项目名,如“gc1”;“位置”框输入或选择新项目所在位置,单击“确定”按钮。 弹出“Win32 Console Application Step 1of 1”对话框。单击“An empty project”按钮和“完成”按钮。系统显示“新建工程信息”对话框。单击“确定”按钮。 单击“工程”单击“Win32 Console Application”输入项目名选择新项目位置单击“确定”单击该选项单击“完成”单击“确定”24c语言概述课件Visual C+ 6.0Visual C+ 6.0集成环境集
20、成环境集成环境集成环境2. 编辑源程序文件(2)建立新项目中的文件单击“文件”-“新建”,弹出“新建”对话框。 选择“文件”选项卡。单击“C+ Source File”选项,在“文件”对话框中输入文件名,单击“确定”按钮。系统自动返回VC6主窗口。显示文件编辑区窗口,在文件编辑区窗口输入源程序文件。单击“文件”输入文件名单击“C+ Source file”单击“确定”选择“添加工程”输入源程序25c语言概述课件Visual C+ 6.0Visual C+ 6.0集成环境集成环境集成环境集成环境3. 编译和连接 方法一:选择主窗口菜单栏中“编译”菜单项;系统弹出下拉菜单,选择“组建”菜单命令。
21、方法二:单击主窗口编译工具栏上的 “Build”按钮进行编译和连接。单击“编译”(1)系统对程序文件进行编译和连接,生成以项目名称命名的可执行目标代码文件.exe。(2)编译连接过程中,系统如发现程序有语法错误,则在输出区窗口中显示错误信息,给出错误的性质、出现位置和错误的原因等。如果双击某条错误,编辑区窗口右侧出现一个箭头,指示再现错误的程序行。用户据此对源程序进行相应的修改,并重新编译和连接,直到通过。 单击“Build”26c语言概述课件Visual C+ 6.0Visual C+ 6.0集成环境集成环境集成环境集成环境4. 执行方法一:单击“编译”菜单中“执行”命令。方法二:单击主窗口编译工具 栏 上 的 “Build Execute”按钮来执行编译连接后的程序。运行成功,屏幕上输出执行结 果 , 并 提 示 信 息 :“Press any key to continue”。此时按任意键系统都将返回VC6的主窗口。 在执行程序过程中出现运行错误。用户要修改源程序文件并且重新编译、连接和执行。单击“编译”单击“Build Execute”27c语言概述课件THE END28c语言概述课件此课件下载可自行编辑修改,供参考!此课件下载可自行编辑修改,供参考!感谢你的支持,我们会努力做得更好!感谢你的支持,我们会努力做得更好!