第1章 程序设计ABC课件.ppt

上传人:牧羊曲112 文档编号:2163631 上传时间:2023-01-22 格式:PPT 页数:40 大小:1.19MB
返回 下载 相关 举报
第1章 程序设计ABC课件.ppt_第1页
第1页 / 共40页
第1章 程序设计ABC课件.ppt_第2页
第2页 / 共40页
第1章 程序设计ABC课件.ppt_第3页
第3页 / 共40页
第1章 程序设计ABC课件.ppt_第4页
第4页 / 共40页
第1章 程序设计ABC课件.ppt_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《第1章 程序设计ABC课件.ppt》由会员分享,可在线阅读,更多相关《第1章 程序设计ABC课件.ppt(40页珍藏版)》请在三一办公上搜索。

1、第1章 程序设计ABC,C 语言,计算机专业教研室王永会 戊2-306 24690666,计算机专业学什么?,什么是“会计算机”?会打字?会编程?会DIY?会上网?会“黑客”?懂原理、能应用、有创新,计算机,计算机是用来延伸人的能力的工具,需要人来驾驭我们的职责是让非计算机专业的人更容易驾驭它完成这一目标的主要手段之一就是“编程(Programming)”,计算机未来发展趋势,巨型化-Supercomputer微型化-Microcomputer,Nanotech Computer,embedded system 网络化-Web Internet智能化-AI data mining,Hardwa

2、re:electronic and electrical system,automation,programmingSoftware:software engineering,programmingComputing:Data Intensive Computing,cloud Computing,data warehouse,programming Application-oriented:science computing,social computing,GIS,programming,计算机与人工智能,计算机行业的梦想让计算机(Computer)能像人一样地思考,与人自然交流,人工智能

3、(Artificial Intelligence)图灵测试,计算机与人工智能,1997年,IBM公司研制的深蓝超级计算机在一场“人机大战”中打败了国际象棋大师卡斯帕罗夫被誉为“人工智能的一大胜利”深蓝的主要研制者之一许峰雄博士:胜利靠的只是不知疲倦地高速运算,并不是什么智能,计算机基本工作过程,整个过程的执行者是硬件,但硬件是受软件控制的编程,就是编写软件,使硬件按照人的意图工作,计算机基本工作过程,“冯诺依曼机”结构,大脑,记忆装置,眼睛和耳朵,软件的形成,软件(Software)的形成程序员(Programmer)编写程序源代码(Source Code)编译器(Compiler)把源代码转

4、换为可被计算机理解的机器代码(Machine Code)并把机器代码以可执行文件(Executable File)的形式保存在磁盘上,软件运行过程的简单描述,软件的运行计算机把机器代码读入到内存(Memory)由CPU运行这些代码读取输入(Input)产生输出(Output)完成程序员预定的功能计算机专业后续课程计算机原理编译原理操作系统,人与计算机的对话,两个说不同母语的人的对话方式:一方学另一方的语言双方都学习一种第三方语言人与计算机的对话方式:计算机学习人的语言(自然语言理解)人学习计算机的语言学习第三方语言,程序设计语言与人类语言,自然语言:人类为了交流思想、表达感 情、交换信息,逐步

5、发明了语言。,程序设计语言:人类为了能够更好地与计 算机进行交流与通讯,发明了专门与计算机打交道的交流工具。,自然语言的构成,字,程序设计语言的构成,基本单元,词:标识符 关键字 常量 运算符,句子:语句,篇章:程序,编程并不神秘,与从小母语或自然语言如一门外语的学习有许多相似之处。,计算机语言是一种跨国界的世界通用的语言,通过编程可以表达自己的思想,互相交流!,程序设计语言(Programming Language)是人与计算机进行交流的语言计算机直接能读懂的语言机器语言(Machine Code),也叫机器代码一种纯粹的二进制语言,程序设计语言的故事,程序设计语言的故事,计算机为什么用二进

6、制呢?为什么不用我们日常熟悉的十进制呢?二进制在在电器元件中容易实现 计算机进行二进制运算比进行十进制运算要简单得多,程序设计语言的故事,机器语言编写的1+1程序汇编语言(Assemble Language)编写的1+1程序,101110000000000100000000000001010000000100000000,MOV AX,1ADD AX,1,程序设计语言的故事,BASIC语言编写的1+1程序C语言编写的1+1程序,PRINT 1+1,#include main()printf(%dn,1+1);,C语言的创世纪,一切从一个叫“Space Travel”的电子游戏开始为了让他的游戏

7、能在PDP-7上运行,Ken Thompson用汇编语言给PDP-7写了一个操作系统UNIX汇编太不好用了,Thompson需要高级语言试验了一些高级语言,包括Fortran,都不理想他在BCPL基础上,自己设计了一个B语言UNIX开始发展,B也不够用了Dennis Ritchie加入,把B改造成C开始用C重写UNIX,C程序设计语言,是一种高级语言高级语言并不是“高级”,只是相对低级语言,在一个高的级别上进行编程历史悠久,战勋卓著诞生于上世纪70年代初,成熟于80年代(C89),修订与90年代(C99)很多重量级软件都是用C写的上天入地,无所不能几乎没有不能用C写出来的软件,没有不支持C的系

8、统很多流行语言、新生语言都借鉴了它的思想、语法从C+,到Java,再到C#,还有php等,C程序设计语言,硬件(Hardware),操作系统(OS),应用程序(Application),应用平台,基于平台的应用程序,低级语言的地盘,高级语言的地盘,C语言的地盘,C语言的设计者Dennis M.Ritchie,C is quirky,flawed,and an enormous success.,和Unix的设计者Ken Thompson接受美国国家技术勋章,Ritchie和Thompson在开发UNIX,程序设计语言,编辑(Edit)扩展名为.c的文件 编译(Compile)扩展名为.obj的

9、文件 链接(Link)形成最后的可执行文件扩展名为.exe的文件 运行(Run),编译语言,一种编译语言对应一种编译器程序员按照该语言的语法编写程序源代码,把自己的意图融入到代码中编译器读入源代码,把程序员的意图转换成可执行程序,供他人使用,C语言,可执行程序,编译器,解释运行,解释运行过程程序员编写程序源代码解释器读入源代码,并执行源代码解释运行的语言特点执行速度慢好学易用先编译、后解释把源代码编译成更容易解释的中间代码,然后再解释运行,流行语言,应用编程语言机器语言汇编语言BasicPascalCC+JavaC#专项编程语言Lotus NotesPower Builder,Web编程语言H

10、TMLXMLPHPASPJSPJavaScriptVBScript其他perlpythonVBA,对一门计算机语言的深入掌握意味着:学习计算机程序设计的思想、方法+经验+兴趣=能力和成功!,学习C语言目的及方法,期末考试;等级考试;后续有关课程的学习打基础;为学习其它的高级语言或开发工具基础;工作;快乐;,预习!+课堂教学+实践!,调试并去除错误学习编程唯一有效途径!Debug and remove errors is an only effective way for learning programming.,例1:Hello,World,#include main()printf(hel

11、lo,worldn);,hello.c,简单的C程序介绍,考考你:如何把“hello”和“world”分别打印在两行?,#include main()int a,b,c;/变量声明整型(integer)variable declaration a=100;/变量赋值,assignmentb=50;c=a+b;/计算,compute and assign.printf(“n c=%d”,c);/output“c”to screen,例2:求两数之和。,例3:求两个数的和(函数),前面使用了系统提供的函数printf。不用知道这个函数内部是如何运作的,只按照参数形式调用它即可;C程序由函数构成;我

12、们也可以定义自己的函数;“一个程序应该是轻灵自由的,它的函数就象串在一根线上的珍珠。”(编程之道),#include/*函数功能:计算两个整数相加之和 入口参数:整型数据a和b 返回值:整型数a和b之和*/int Add(int a,int b)return(a+b);/*主函数*/main()int x,y,sum=0;printf(Input two integers:);scanf(%d%d,/*输出x和y相加之和*/,例3:求两个数的和(函数),(1)函数由两部分组成:函数说明部分:函数名、函数类型、形参名、形参类型。函数体:实现函数的具体操作;由语句构成。(2)程序总是从main函数

13、开始执行。,sum.c,例4:打印华氏温度与摄氏温度对照表,计算公式:C=(5/9)(F-32),打印华氏温度与摄氏温度对照表,#include/*对 fahr=0,20,.,300 打印华氏温度与摄氏温度对照表*/main()int fahr,celsius;int lower,upper,step;lower=0;/*温度表的下限*/upper=300;/*温度表的上限*/step=20;/*步长*/fahr=lower;while(fahr=upper)celsius=5*(fahr-32)/9;printf(%dt%dn,fahr,celsius);fahr=fahr+step;,fc

14、1.c,代码风格,#include/*对 fahr=0,20,.,300 打印华氏温度与摄氏温度对照表*/main()int fahr,celsius;int lower,upper,step;lower=0;/*温度表的下限*/upper=300;/*温度表的上限*/step=20;/*步长*/fahr=lower;while(fahr=upper)celsius=5*(fahr-32)/9;printf(%dt%dn,fahr,celsius);fahr=fahr+step;,fc1.c,没有代码风格,#include main()int fahr,celsius;int lower,up

15、per,step;lower=0;upper=300;step=20;fahr=lower;while(fahr=upper)celsius=5*(fahr-32)/9;printf(%dt%dn,fahr,celsius);fahr=fahr+step;,http:/www.ioccc.orgThe International Obfuscated C Code Contest两个获奖的例子:dance.c、sqrt.c,fc2.c,学习了,#include main()printf(),scanf()+,=,=,=,!=int,floatwhile代码风格注释、缩进、空行、命名函数,作业,编程题求两数最大值(函数实现)。华氏温度与摄氏温度转换。要求输入一个华氏温度转换成摄氏温度。,例2:求两数中的最大值,#includeint max(int x,int y);main()int a,b,c;scanf(“%d,%d”,/函数类型 函数名 形参 int max(int x,int y)if(x y)return(x);else return(y);,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号