分享
分享赚钱 收藏 举报 版权申诉 / 40

类型C语言 第1章 概述.ppt

  • 上传人:ysd1539
  • 文档编号:7016753
  • 上传时间:2019-05-01
  • 格式:PPT
  • 页数:40
  • 大小:798KB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    C语言 第1章 概述.ppt
    资源描述:

    1、第1章 程序设计和C语言,1.1 几个小问题,什么是PC机? 目前的PC机可每秒执行十亿次加法 人用计算器一生也完不成PC机1秒钟完成的计算量,1.1 几个小问题,PC机的组成? 硬件(hardware) 键盘、鼠标、显示器、硬盘、DVD、内存、CPU 硬件成本下降很快 摩尔定律,每过18个月微芯片的集成度翻一番,而芯片价格保持不变 软件(software) 运行于计算机之上的程序(Program) 如何降低软件开发成本?如何让软件更智能?功能更完善?,几个小问题,软件与程序、编程语言的关系 什么是编程语言? 编程使用什么软硬件工具平台? 什么是程序设计? 程序设计有什么用? 程序的开发步骤?

    2、,软件与程序、编程语言的关系,10 R=5 20 L=2*3.14*R 30 S=3.14*R*R 40 PRINT R,L,S 50 END,软件,程序,语言,语言规则,计算机语言是 编写程序、制 作软件的工具,什么是编程语言,计算机能读懂的语言 机器语言(Machine Language) 由一系列二进制0和1组成 用打孔机写程序,一旦打错一个眼,前面的所有工作都玩完。 机器语言编写的“1+1”程序,10111000 00000001 00000000 00000101 00000001 00000000,像不像天书?,什么是编程语言,低级语言 符号语言(symbolic Language

    3、),需要“汇编”的方式转换成机器语言 ADD 1,1 用汇编语言写的“1+1”程序,什么是编程语言,PRINT 1+1,结果显示在屏幕上,#include main() printf(“%dn“, 1+1); ,高级语言,程序设计语言(programming language) BASIC语言编写的“1+1”程序C语言编写的“1+1”程序,什么是编程语言,高级语言的特点 语言功能更强,不依赖于具体的机器 更像英语,更易懂,更易于普通人员的使用 需要“编译器”将其“翻译”成机器语言,流行的高级语言,应用编程语言 机器语言 汇编语言 Basic Pascal C C+ Java C# 专项编程语言

    4、 Lotus Notes Power Builder,Web编程语言 HTML XML PHP ASP JSP JavaScript VBScript 其他 perl python VBA,流行的高级语言,Ada,ALGOL60,ALGOL68,Pascal,Modula-2,CPL,BCPL,B,C,C+,Java,LISP,PROLOG,COBOL,FORTRAN77,FORTRAN,PL/1,Simula 67,Smalltalk 80,BASIC,ANSI-BASIC,QBASIC,VB,FORTRAN90,怎样让计算机读懂高级语言?,编译器(Compiler) 把源代码转换为可被计算

    5、机理解的机器代码 把机器代码以可执行文件(Executable File)的形式保存在磁盘上一种程序设计语言对应一种编译器,怎样让计算机读懂高级语言?,程序员按照该语言的语法编写程序源代码 把自己的意图写入源代码中 编译器读入源代码 把程序员的意图转换成可执行程序,供他人使用,C语言,可执行程序,编译器,程序开发步骤,做什么?,可执行文件 扩展名为.exe的文件,怎么做?,扩展名为.obj的文件,当前computer所面临的挑战,硬件 体积更小,更轻便 速度更快 存储量更大 软件设计 更智能的程序,计算机行业的梦想,计算机行业的梦想 与人自然交流,像人一样地思考 人工智能(Artificial

    6、 Intelligence)图灵测试 1950年,英国数学家A.M.Turing在思想(mind)杂志上发表“计算机与人工智能”一文,提出判定机器是否具有智能的测试方法,计算机行业的梦想,博弈被认为是智能活动,AI之初主要研究下棋程序 1997年,IBM公司研制的深蓝超级计算机在一场“人机大战”中打败了国际象棋大师卡斯帕罗夫,被誉为“人工智能的一大胜利” 世界排名第二的棋手印度人阿南得说: 这是一个像人的机器和一个像机器的人之间的战斗 深蓝的主要研制者之一许峰雄博士: 胜利靠的只是不知疲倦地高速运算,并不是什么智能,深蓝中输入了近200万棋谱,1.2 C程序设计语言,20世纪60年代,贝尔实验

    7、室,Ken Thompson开始开发一个叫做UNIX的操作系统 70年代, 将BCPL语言改造成更适合开发UNIX的B语言 1971年,Dennis M. Ritchie开始和Thompson合作开发UNIX,将B语言改造成C语言,C语言的设计者,Dennis M. Ritchie,Ritchie漫画像,C程序设计语言,是一种高级语言 高级语言并不是“高级”,只是相对低级语言,在一个高的级别上进行编程 历史悠久,战勋卓著 诞生于上世纪70年代初,成熟于80年代 “ANSI C”标准的发布是C语言成熟的标志 很多重量级软件都是用C写的 上天入地,无所不能 几乎没有不能用C写出来的软件,没有不支持

    8、C的系统,C程序设计语言,C语言被分类为高级语言,但实际上它是一种介于高级语言和低级语言之间的语言。 很多流行语言、新生语言都借鉴了它的思想、语法 从C+,到Java,再到C# 正确地学好C语言,是学习这些流行语言的基础。,C语言的特点,语言简洁、紧凑,使用方便、灵活;运算符丰富;数据结构丰富;具有结构化的控制语句;语法限制不太严格,程序设计自由度大;语言表达能力强;生成目标代码质量高,程序执行效率高;用C语言写的程序可移植性好;,1.3 简单的C程序介绍,几个简单的C程序实例 例1-1 /* This is a hello program */ 注释 #include 预处理命令 main(

    9、) 函数 printf(“=n”); 输出结果printf(“How are you! n“);printf(“=n“); ,简单的C程序介绍,例1-2 #include 预处理命令 main( ) 函数 int a,b,sum; 变量的声明a=123;b=465; 变量的赋值sum=a+b; 求和printf(“sum is %dn”,sum); 输出结果,简单的C程序介绍,例1-3: #include int max(int x,int y); 函数声明 main( ) int a,b,c;scanf(“%d,%d”, 输出 ,int max(int x,int y)int z;if (x

    10、y) z=x;else z=y;return(z);,简单的C程序介绍,C程序的基本组成 (1) C程序由函数构成。一个C源程序至少包含一个函数,也可以包含一个main函数和若干个其它函数。因此,函数是C程序的基本单位。 (2).一个函数由两部分组成: (a) 函数的说明部分:包括函数名、函数类型、函数参数(形参)名、形式参数类型。 int max ( int x, int y)函数类型 函数名 参数类型 参数名 (b)函数体:包括变量定义、执行部分。,结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过

    11、嵌套调用得以执行。,简单的C程序介绍,结构特点 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码,例: /*This is the main /* of example1.1*/ */,简单的C程序介绍,编译预处理指令,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,main( ) int i , j , sum;sum=0;for(i=1; i10;i+)for(j=1;j10;j+)sum+=i*j ;printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐

    12、 有足够的注释 有合适的空行,简单的C程序介绍,首先,分析题目,在纸上写出大致的流程 需要几个变量,它们的类型是什么? 是否需要自己编写某个或某些函数,如需要,则确定函数要实现的功能,以及它们的参数(变量) 绝不能拿到题目就编,一定要想清楚,用第2章将要讲到的流程图等方法把算法表示出来,然后再编写程序,编写程序的套路,为变量赋值,编写函数 变量的值是在程序里写死的,还是由用户随意输入?若是后者,则需要用scanf函数 如何处理数据,完成预定的功能(这个部分将体现出程序员的功底) 功能完成,显示结果 此处一般用printf函数,更复杂的会用人机交互界面,编写程序的套路,例1:从两个用户随意输入的

    13、整数中找到大的那个值 第1种解法的步骤: 需要几个变量,它们的类型是什么? 两个变量,均为整数类型 int a,b; 如何为变量赋值? 用scanf函数 scanf(“%d,%d”,(请自学该函数的使用方式),实例分析,例1:从两个用户随意输入的整数中找到大的那个值 第1种解法的步骤: 是否需要编写比较两个数大小的函数? 不需要,直接在程序里比if (a=b)ans=a; elseans=b; 功能完成,显示结果 printf(“the bigger data is %dn”,ans),实例分析,哟嗬,由于需要有个变量来存储比较结果,所以还要在前面再声明一个整型变量 int a,b,ans,例

    14、1:从两个用户随意输入的整数中找到大的那个值 第1种解法的步骤: #include (只要用到scanf和printf,就要用这个预处理命令) main( ) int a,b,ans;scanf(“%d,%d“, ,实例分析,第2种解法的步骤: (前面都一样,略) 是否需要编写比较两个数大小的函数? 需要,将其取名为max,它的参数有两个,都是整型,函数完毕后返回大的那个值int max(int x,int y) int ans;if (x=y)ans=x;elseans=y;return(ans); 功能完成,显示结果,实例分析,例1:从两个用户随意输入的整数中找到大的那个值 第2种解法的步

    15、骤: #include (只要用到scanf和printf,就要用这 int max(int x,int y) 个预处理命令) main( ) int a,b,ans;scanf(“%d,%d“, ,实例分析,int max(int x,int y) int z;if(xy)z=x;elsez=y;return(z); ,输入三个数,找最大值(解法1),main( ) int a,b,c,max;printf(“Please input 3 numbers:n“);scanf(“%d,%d,%d“, ,main( ) int a,b,c,m;printf(“ Please input 3 numbers:n “);scanf(“ %d,%d,%d “, ,输入三个数,找最大值(解法2),1.4 C语言的上机步骤,C语言的上机执行过程,C编译系统,让我们一起努力把C搞定!,真的,学习C语言没那么简单,所以,每当想放弃的时候,请先等一分钟,然后选择坚持到底。我相信,当经历了撕夜,当流光了泪海,终将领悟C的真谛,从此海阔天空,飞得更高!,

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C语言 第1章 概述.ppt
    链接地址:https://www.docduoduo.com/p-7016753.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开