




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*1 课程有关 学时:32 20学时课堂,12学时上机 考试:闭卷考试 平时成绩:课堂点名、作业、上机, 占20 期末考试:占80 *2 希望做到 “三多”:“多阅读程序、多编写程序、多上 机调试程序”, “两勤”:“勤动脑、勤动手” 第1章 程序设计ABC 周秀云 *4 计算机与人工智能 计算机行业的梦想 让计算机(Computer)能 像人一样地思考,与人自然交流 , 人工智能(Artificial Intelligence) *5 计算机与人工智能 1997年,IBM公司研制的深蓝超级计算机 在一场“人机大战”中打败了国际象棋大师卡 斯帕罗夫 被誉为“人工智能的一大胜利” 深蓝的主要研制者之一许峰雄博士: 胜利靠的只是不知疲倦地高速运算,并不是 什么智能 *6 计算机与信息技术 计算机技术与通信技术结合,构成了信息技 术(Information Technology),诞生 了一个新词:IT 嵌入式系统是IT未来的主要发展方向之一 典型的嵌入式系统有:机器人、手机和智能 家电等 *7 计算机 计算机是用来延伸人的能力的工具,需要 人来驾驭 让非计算机专业的人更容易驾驭它 完成这一目标的主要手段之一就是 “编程(Programming)” *8 计算机基本工作过程 输入/输出 设备 存储器运算器 控制器 源程序 和输入数据 输出结果 取出数据 存入数据 操作命令存取命令 取出 程序指令 输入输出 命令 计算结果 CPU “冯诺依曼机”结 构 大脑 记忆 装置 眼睛 和耳 朵 程序和数据 执行结果 *9 计算机基本工作过程 存储器。程序和数据都以二进制代码形式 存于存储器中。从形式上看,指令与数据 没有区别。 控制器。在它的控制下,指令依次从存储 器中取出,然后对指令进行解释和执行。 每条指令均由操作数、操作数地址和运算 结果地址组成。 运算器。用于完成算术、逻辑运算。 输入、输出设备。用来完成人-机通信 *10 计算机工作过程中的名词解释 指令: 计算机的工作体现为执行指令. 指令是一组二进制代码,它给出了 计算机要进行的操作和需要的数据,或 取数据的地址。 *11 程序 程序是指为完成某个特定任务的一 系列指令的集合。 编程序:指按一定的要求和规定安 排这一系列指令。 *12 工作过程 是一种“存储程序”的工作原理( 事先编制程序、存储程序和自动连续 执行程序)。 只要存入不同程序,可实现不同任 务。 *13 计算机基本工作过程 整个过程的执行者是硬件,但硬件是受软件控制的 编程,就是编写软件,使硬件按照人的意图工作 *14 软件分类 计算机系统由软件和硬件组成 软件:计算机所使用的各种程序的集 合及程序运行时所需的数据,是相对 硬件而言的计算机的信息部分,泛指 程序。 软件分系统软件和应用软件。 *15 软件分类 系统软件 管理计算机硬件,提高机器使 用效率,支持应用软件的开发环境 和运行环境,以便有效地向用户提 供服务。 *16 软件分类 系统软件主要包括: 操作系统 各种语言的处理程序(是对源程序执 行编译或解释操作的程序,不同的语言有 不同的语言处理程序,源程序是用计算 机语言编写而成的) 各种服务程序、数据库管理系统等等 。 *17 软件分类 应用软件主要包括: 各个应用领域中为解决各类问题而编 写的软件。 如:WORD、EXCEL、POWERPOINT。 *18 软件的形成 软件(Software)的形成 程序员(Programmer)编写程序源代码 (Source Code) 编译器(Compiler)把源代码转换为可被 计算机理解的机器代码(Machine Code) 并把机器代码以可执行文件(Executable File)的形式保存在磁盘上 *19 编译语言 一种编译语言对应一种编译器 程序员按照该语言的语法编写程序源代码 ,把自己的意图融入到代码中 编译器读入源代码,把程序员的意图转换 成可执行程序,供他人使用 源程序源程序 可执行程序可执行程序 编译器编译器 *20 程序设计语言(Programming Language) 是人与计算机进行交流的语言 是指用来编制和设计程序所使用的计算机语 言 计算机直接能读懂的语言 机器语言(Machine Code),也叫机器代码 一种纯粹的二进制语言 程序设计语言的故事 *21 程序设计语言的故事 计算机为什么用二进制呢? 为什么不用我们日常熟悉的十进制呢? 二进制在在电器元件中容易实现 计算机进行二进制运算比进行十进制运算 要简单得多 *22 程序设计语言的故事 机器语言编写的1+1程序 二进制代码序列,又称目标语言。 运行速度快,但编程难、易错、不通用,故不用 它编程。 每一种计算机都有自己的机器语言(指令系统) 。 10111000 00000001 00000000 00000101 00000001 00000000 *23 程序设计语言的故事 汇编语言(汇编语言(Assemble LanguageAssemble Language)编写的)编写的1+11+1程序程序 MOV AX, 1 ADD AX, 1 将二进制代码用符号(或称助记符)来表示。 随不同CPU而异,没有通用性。 汇编语言程序(源程序)必须经汇编程序翻译成目标程序 , 通过连接程序生成可执行程序后,才能执行。 *24 程序设计语言的故事 BASIC语言编写的1+1程序 C语言编写的1+1程序 PRINT 1+1 #include main() printf(“%dn“, 1+1); *25 程序设计语言的故事 高级语言 是面向问题的语言,与自然语言接近 。 编写的程序可以在不同型号的机器上 使用,易读、易记、通用性强,是面向 用户的语言。 源程序需通过编译程序变为目标程序 ,再链接成可执行的机器语言程序后才 能执行 *26 流行语言 应用编程语言 机器语言 汇编语言 Basic Pascal C C+ Java C# 专项编程语言 Lotus Notes Power Builder Web编程语言 HTML XML PHP ASP JSP JavaScript VBScript 其他 perl python VBA *27 C程序设计语言 简称C语言 BCPL语言进化成B语言,B语言又进化为C语言 是一种高级语言 高级语言并不是“高级”,只是相对低级语言,在 一个高的级别上进行编程 历史悠久,战勋卓著 诞生于上世纪70年代初,成熟于80年代 “ANSI C”标准的发布是C语言成熟的标志 很多重量级软件都是用C写的 上天入地,无所不能 几乎没有不能用C写出来的软件,没有不支持C的 系统 *28 C程序设计语言及计算机的层次 硬件(硬件(HardwareHardware) 操作系统(操作系统(OSOS) 应用程序应用程序 (ApplicationApplication) 应用应用 平台平台 基于基于 平台的平台的 应用应用 程序程序 低级语言低级语言 的地盘的地盘 高级语言高级语言 的地盘的地盘 C C 语语 言言 的的 地地 盘盘 *29 C程序设计语言 C语言被分类位高级语言,但实际上它是一种介于高 级语言和低级语言之间的语言。 很多流行语言、新生语言都借鉴了它的思想、语法 从C+,到Java,再到C# 正确地学好C语言,是学习这些流行语言的基础。 *30 C语言的设计者 Dennis M. Ritchie *31 Ritchie漫画像 C is quirky, flawed, and an enormous success. *32 和Unix的设计者Ken Thompson 接受美国国家技术勋章 *33 Ritchie和Thompson在开发 UNIX *34 1.3 简单的C程序介绍 例1.1: C程序构成: 1)每一个C程序都必须有一个“主 函数”: 函数说明:main( ),括号内一般 不带参数 函数体: 。 *35 2)例中主函数内有一个输出语句 printf是C编译系统提供的标准库 函数中的输出函数,而不是C语言本身 的输出函数。本例中功能为原样输出 双引号内的字符串。 3)“n”为换行符 4)语句后带一分号 5)程序运行结果: 在屏幕上输出信息: This is a c program. *36 例1.2: 1)/*/表示注释部分 对编译和运行不起作用,可加在程 序中任何位置。 2)第二行是变量定义部分 3)第三行是赋值语句,运算次序 自右向左。 *37 4)“%d”是输入输出的“格式字符串 ”: 用来指定输入输出时的数据类型和格 式; 表示“十进制整数类型”,在执行输出 时,此位置上代以一个十进制整数值。 5)printf 括号内的sum 是要输出的 变量。 6)程序运行结果: 在屏幕上输出: sum is 579 *38 例1.3: 1)max函数为主函数中被调用函 数: 求x, y中较大值赋给z。 2)return语句中将z的值返回给 main 返回值是通过函数名max带回到 main的调用处。 *39 3)scanf 是C提供的输入函数 的含义为“取地址”; 这里scanf的作用是将两个数值按 十进制整数形式分别输入到变量a和b 的地址所标志的单元中,即输入数据 给a 和b。 *40 4)语句c = max (a, b) : 调用max函数,调用时将实际参数a, b的值分别传给形式参数x和y 执行max函数后得到返回值z, 将其 赋给变量c. *41 5)程序运行时输入数据: 8,5 在屏幕上输出: max = 8 *42 C程序的组成和形式 1. C程序是由函数构成的 至少包含一个main函数,用函数 来实现特定的功能。 被调用函数可以是系统提供的库函 数,也可以是自己编写的函数,相当 于子程序概念。 *43 2. 函数由两部分组成 1)函数的说明部分: 包括:函数名、函数类型、函数属 性、函数参数(形参)名,形参类型。 函数参数可以没有。 例如: 例1.3中: int max(int x,int y) *44 2)函数体: 部分,可以嵌套 包括:声明部分:变量定义; 执行部分:由若干语句组成 有时可没有变量定义部分,有时两者 都可没有(空函数)。 *45 3. Main函数可以在程序的任一位置 但C程序总是从main函数开始执 行的。 4. C程序书写格式自由 一行内可以写几个语句 一个语句可分写在多行上 5. 每个语句和数据定义的最后必须有 一个分号 *46 6C语言本身没有输入输出语句 ,输入输出由库函数来完成。 7可用”/*/”对程序任一部分 作注释,增加可读性。 8 应成对出现 *47 格式特点 l习惯用小写字母,大小写敏感 l不使用行号,无程序行概念 l可使用空行和空格 l常用锯齿形书写格式 main( ) . . . . main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); 优秀程序员的素质之一 : 使用TAB缩进 对齐 有足够的注释 有合适的空行 小结 *48 结构特点 l函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函 数通过嵌套调用得以执行。 l程序语句 C程序由语句组成 用“;”作为语句终止符 l注释 /* */为注释,不能嵌套 不产生编译代码 例: /*This is the main /* of example1.1*/ */ 非法 编译预处理命令 小结小结( (续续) ) *49 1.4 C程序的上机步骤 编辑(Edit) 上机输入与编辑源程序,扩展名为.c的文件 编译(Compile) 扩展名为.obj的文件 链接(Link) 与库函数链接形成最后的可执行文件 扩展名为.exe的文件 运行 (Run) 运行目标程序 如图1.1 发现错误则读程序进行修改 *50 开始 编辑 编译 有错? 连接 执行 结果对? 结束 源程序 f.c 目标程序 f.obj 库函数和 其他目标程序 可执行 目标程序 f.exe 正确 不正确 有 无 C程序的上机步骤: *51 C程序的编译环境 Turbo C 2.0 Turbo C+ 3.0 Visual C+ 3.0 *52 32 keywords:defined and used by C auto break case char const continue default do double
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新蔡环氧地坪施工方案
- 《肉及肉制品介绍》课件
- 2025沿海货物运输合同
- 2025至2030年中国铁线花瓶数据监测研究报告
- 2025混凝土工劳务分包施工合同
- 2025至2030年中国立毛刮油带数据监测研究报告
- 中宁塑胶跑道施工方案
- 东莞电梯井施工方案
- 租房走廊利用方案范本
- 记忆技巧护士资格证考试的试题及答案
- 2025年内蒙古自治区中考一模语文试题(原卷版+解析版)
- 2025年共青团入团积极分子考试测试试卷题库及答案
- GB/T 44994-2024声学助听器验配管理
- 知识产权法(四川师范大学)智慧树知到答案2024年四川师范大学
- 福州流动人口登记表
- DLT 5175-2021 火力发电厂热工开关量和模拟量控制系统设计规程-PDF解密
- 上海实验学校幼升小测试题(共49页)
- PHC管桩-桩基工程监理质量评估报告
- 上海实验学校幼升小测试题
- 天津市劳动局用工-6号表
- 计划物控岗位月度绩效考核表
评论
0/150
提交评论