山东科技大学 c语言第2章_C语言概述课件

上传人:我*** 文档编号:145824643 上传时间:2020-09-23 格式:PPT 页数:16 大小:360.50KB
返回 下载 相关 举报
山东科技大学 c语言第2章_C语言概述课件_第1页
第1页 / 共16页
山东科技大学 c语言第2章_C语言概述课件_第2页
第2页 / 共16页
山东科技大学 c语言第2章_C语言概述课件_第3页
第3页 / 共16页
山东科技大学 c语言第2章_C语言概述课件_第4页
第4页 / 共16页
山东科技大学 c语言第2章_C语言概述课件_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《山东科技大学 c语言第2章_C语言概述课件》由会员分享,可在线阅读,更多相关《山东科技大学 c语言第2章_C语言概述课件(16页珍藏版)》请在金锄头文库上搜索。

1、面向过程的语言: FORTRAN BASIC PASCAL C 面向对象的语言: JAVA C+ C# (类库) 面向问题的语言:SQL (如select Name FROM student),编程语言分哪几类,各自有什么优缺点?,引言,本章要点,第二章 C语言概述,C语言发展史 C程序的组成和特点 上机步骤与方法 C程序调试,2-1 C语言发展史,C出现前:系统软件多用汇编语言编写,因高级语言无法像汇 编语言一样可以直接对硬件进行直接操作,出现:72-73年贝尔实验室D. M.Ritchie和B.W.Kernighan 设计了C语言,既有低级语言可直接操作硬件的优势,又具 有高级语言数据类型

2、丰富、功能强、可移植的优点,流行:1973年K.Thompson和D.M.Ritchie合作将UNIX 代码90%以上用C改写,从此两者相辅相成迅速发展,标准化:1987年美国家标准化协会公布87 ANSI C标准,90年被ISO采纳,发展:90年代向面向对象和可视化方向发展,出现了C+ VC+ C# VC#等,但C语言仍然广泛流行于系统软件开发和嵌入式开发等需要对硬件进行大量操作的场合,2.2 C程序组成与特点,void main( ) /*程序入口,主函数 */ printf(“Hello World!”); /*调用标准输出函数输出*/ ,C程序由函数构成,main函数是程序入口,唯一

3、函数包括函数头和函数体两部分,前者由函数 返回值类型、函数名和参数列表组成,后者从 开始、到结束,中间包含各种语句 输入输出用库函数实现,需包含相应头文件 语句以分号结束,中间是否分行无关,文件包含除外 程序中可用/*/加注释,单行亦可用/,# include /*标准输入/输出头文件*/,例2.1 输出HelloWorld.,例(补充) 输入两整数,求和并输出,# include void main( ) int i,j,sum; /定义3个有符号整型变量 scanf(“%d,%d”,/printf要求格式控制部分和变量列表 ,函数体分声明部分(变量定义等)和执行部分 变量必须先定义后使用

4、定义变量实际就是在内存中分配存储单元,为变量赋值实际是向该存储单元写数据,取值就是读取该存储单元中的数据。 通过scanf输入变量时需给出变量的存储单元地址( printf(“请输入变量值:”); scanf(“%lf”, ,不同类型的库函数对应的头文件不同 要求用户输入前最好有给出提示语句 输出数据时通常在格式控制部分附以 说明,且以n结束,例2.3输入2个数输出小者(自定义min子函数),# include void main( ) int a,b,c; scanf(“%d,%d”,/回车n ,函数分main函数、库函数和用户自定义函数 通常将相对独立的功能模块用一个自定义函数实现 若函数

5、的具体定义出现在使用语句之后,则必须 在使用前进行声明,int min(int x, int y)/*形参*/ int z; if(xy)z=x; /* 分支语句*/ else z=y; return(z); ,int max(int x,int y);/*函数声明*/,C程序整体特点:,#include #include void main( ) 子函数声明与变量定义 执行语句组 返回值类型 函数名1(参数表) 变量定义与函数声明 执行语句组 . 返回值类型 函数名n(参数表) 变量定义与函数声明 执行语句组 ,结构:由若干函数(main函数、库函数、自定义函数)组成,main函数是程序入口

6、。 函数包括函数头和函数体两部分,函数头分返回值类型、函数名和参数列表;函数体包括声明部分和执行部分,声明部分包括变量定义和函数的声明,执行部分包括各类语句(输入输出语句、赋值语句、结构控制语句和函数调用语句);语句以分号结束 补充: C语言区分大小写、全半角与中英文标点,2-3 C语言上机步骤与方法,1、步骤,编辑源程序 *.c 编译compile源程序 *.obj 与库函数连接link *.exe 执行程序run,2、C语言集成开发环境IDE: Turbo C+ 3.0:Borland公司为C+程序研制的集成环境,兼容C程序,DOS环境 Visual C+6.0:Microsoft公司研制

7、,Windows界面,VC演示,3、运行程序的操作: 问题需求:输入正整数n,求1*2*n 算法:累乘器p置1,变量i从1变到n,每次都将i乘入p,输出p 实现: 测试: ,2-3 C语言上机步骤与方法,错误类型:语法错误(error与warning) 运行错误 逻辑错误 程序调试:通过编译信息改正语法错,通过测试发现运行错和逻辑错. 测试的关键在于组织测试数据,目的在于发现程序漏洞,进而完善程序 调试工具:断点 监视窗,2-4 C程序的调试【记】,error:丢分号、括号和引号,标点或大小写错,变量未定义,缺头文件 warning:变量使用前未赋初值,赋值类型不匹配,变量定义后未用 运行错:

8、越界访问(丢 if(xy)z=x; else z=y; return(z); void main scanf(“%d,%d”, a, b); /*读入两整数,用逗号分隔 c=max(a,b); printf(“max=%cn”,c) ,#include,;,int a,b,c;,*/,%d,int int,作业:编程输入一个正整数输出其阶乘,使其尽量完善,/以下为初步实现,存在很多漏洞, 可以3,-3,0为测试数据进行测试完善 #include void main() int n,factorial,i; printf(input n:); scanf(%d, ,回顾:,掌握典型算法:辗转相除

9、 求最大/小值 掌握自顶向下、逐步细化的算法设计方法,如 判断素数 求素数 i n! (i!) 2i (-1)i /(i!) 了解常见的编程语言,掌握C语言特点 掌握C程序结构,会写简单的C程序 会使用VC调试C程序 问题说明: double与lf main返回值类型 程序执行过程与函数调用 return(xy?y:x); for(i=0;in;i+) =与= 工作区 工程与源文件 链接错(模板错或多个main) 运行错 .c .cpp .dsw .exe 程序暂停 复合语句与s1;s2 编码规范:分行 缩进(Insert) 与单独一行,#include #include void main(

10、 ) 子函数声明与变量定义 执行语句组 返回值类型 函数名1(参数表) 变量定义与函数声明 执行语句组 . 返回值类型 函数名n(参数表) 变量定义与函数声明 执行语句组 ,参考:Visual studio 2005断点说明:,除位置断点外,Visual Studio 调试器还提供仅限于本机使用的数据断点。数据断点是设置在某个全局变量或局部变量上的断点,而不是在代码中的某一位置上。设置数据断点会使程序在该变量值发生更改时中断执行。 Hit Count 使您能够确定在调试器中断执行之前命中断点的次数。在默认情况下,每次命中断点,调试器就中断执行。通过设置命中次数,您可以让调试器每命中两次断点中断

11、执行一次,也可以每 10 次、每 512 次或任意选择的次数中断一次。程序中的某些 bug 不会在第一次执行循环、调用函数或访问变量时显现出来,这时候命中次数设置就很有用了。有些时候,bug 直到重复 100 次或 1000 次时才显现出来。此时可以设置命中次数为 100 或 1000 以解决问题。 Condition 是一个表达式,它确定断点是命中还是跳过。当调试器到达该断点时,它会计算条件的值。只有当条件满足时,断点才会命中。可以在某个位置断点处设置条件,只有当条件为真时,才会中断执行。例如调试一个银行程序,其中的帐户余额不允许小于零。可以在代码中的某些位置设置断点并附加以下条件:balance 0。运行程序时,当余额小于零时,执行就会在这些位置中断。然后,就可以在第一个断点处检查变量和程序状态,再继续执行到第二个断点位置,如此继续。 Action 指定在命中断点时应执行的操作。默认情况下,调试器中断执行,但是您可以选择打印一条消息或者运行一个 Visual Studio 宏。如果选择打印消息而不是中断,则断点的效果与 Trace 语句非常类似。这种使用断点的方法称为跟踪点,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号