计算机基础教学系列课程 C语言程序设计.ppt
《计算机基础教学系列课程 C语言程序设计.ppt》由会员分享,可在线阅读,更多相关《计算机基础教学系列课程 C语言程序设计.ppt(627页珍藏版)》请在三一办公上搜索。
1、计算机基础教学系列课程,C语言程序设计,第一章 C语言的发展、特点与程序结构 第二章 基本数据类型、运算符和表达式第三章 基本语句与顺序结构第四章 选择结构第五章 循环结构第六章 数组第七章 函数第八章 指针第十章 结构体第十二章 文件,C 语 言 程 序 设 计,推荐参考书:谭浩强主编程序设计(第二版)北京:清华大学出版社,第一章 C语言的发展、特点与程序开发基本知识,1.1 C语言的发展与特点 1.2 程序设计的基本方法 1.3 算法的概念及其表示1.4 C语言的基本结构 1.5 应用程序的开发步骤和运行过程,下一章,目 录,习题,C语言是一门优秀的程序设计语言C语言是在1973年由美国贝
2、尔实验室开发的。1983年,ANSI为C语言制定了新的标准,称为ANSIC,并于1989年最终完成。目前使用较多的版本有ANSI C,Borland C,Turbo C,Microsoft C/C+,Visual C+等。,C语言的发展,WUCC,C语言是结构化程序设计语言功能强大,具有丰富的数据类型及运算符。简洁紧凑,使用方便灵活。C语言具有自我扩充能力C语言具有汇编语言的功能可移植性好,WUCC,C语言的特点,程序的概念程序是计算机解决问题所需的一系列指令的集合。著名计算机科学家Nikiklaus Wirth 提出了“算法数据结构程序”的公式 程序就是在数据的某些特定的表示方式和结构的基础
3、上,对抽象算法的具体描述。,1.2 程序设计的基本方法,程序数据结构算法程序设计方法语言工具数据结构是数据的类型和数据的组织形式。算法是为解决一个问题而采用的方法和有限的步骤。程序设计方法确定语言和编程环境,WUCC,面向过程的程序设计,所谓面向过程的程序设计,是指利用面向过程的语言工具(如Pascal、Fortran和C语言等)进行程序开发的各项活动。,优点:编程简单、结构性强、可读性好;遵循这种结构的程序只有一个入口和一个出口。缺点:存在数据与程序模块的分离和程序的可重用性差等问题。,WUCC,面向对象的程序设计,Program Design in C Language,面向对象的程序设计
4、将一些新的理念和结构化程序设计中好的思想相融合,提供了一种全新的程序设计方法。,1.3 算法及其表示,算法的特性有穷性 一个算法的操作步骤应当是有限的;确定性 算法中的每一个步骤应当有确定的意义,不能 有二义性;有效性 算法中的每一个步骤应当正确、可行,并且能 有效地执行;有零个或多个输入 执行算法时需要从外界获取的信息;有一个或多个输出 执行算法后应当得到正确的结果。,算法举例,【例1.1】输入三个数,然后输出其中最大的数。(1)输入变量 x,y,z的值(2)比较x和y,如果xy,则x送max;否则y送max。(3)比较max与z,如果 z max,则将z送max。(4)输出max,max
5、即为最大数。,算法,对同一个问题,算法是不唯一的,例如:求和 1+2+3+100(1)=(1+2)+3)+4)+100)(2)=(1+100)50 一个好的算法应该是:正确、易读、效率高。,算法的表示方法,常用的算法描述方法有:自然语言描述、伪代码、流程图、N-S图、PAD图等。1.自然语言 就是用人们日常使用的语言来描述或表示算法的方法。,英语和程序设计语言混合使用称为伪代码。Begin 算法开始 input x,y,z if xy then max=x else max=y if zmax then max=z print max end 算法结束,2.用伪代码表示算法,用一些图框和方向线
6、表示算法的图形表示法。特点:直观形象,易于理解,便于检查和交流。常用流程图符号及含义如下:,3.用流程图表示算法,流程图:,【例1.1】对任意给定的三个整数 x,y,z,求出其最大值。,例:对任意给定的三个整数 x,y,z,求出其最大值。,4.用N-S流程图表示算法,结构化程序设计,C语言是结构化程序设计语言,有三种基本结构。顺序结构 选择结构 循环结构 实践证明,任何复杂的算法都可以用这三种基本结构来描述。,程序设计的目标在正确的前提下,其重要性排列次序依次为:可读、可维护、可移植和高效。,顺序结构,矩形框 用于表示顺序结构。执行时按语句的先后顺序执行。先执行语句A,再执行语句B。,顺序结构
7、的流程图,顺序结构的N-S图,选择结构(分支结构),根据条件的真或假选择执行不同的操作内容。当条件成立执行语句A,否则执行语句B。,选择结构的流程图,选择结构的N-S图,循环结构,(1)当型(while 型循环)当条件成立,执行循环体,否则跳出循环体。,L形框用于表示循环结构,(2)直到型循环(do-while型循环),首先执行循环体,若条件不成立继续执行循环体,直到条件成立为止。,【例1.2】在屏幕上显示一行文字“Welcome to C!”。,#includevoid main()/*定义主函数*/printf(“Welcome to C!n”);程序运行结果:Welcome to C!,
8、函数(Function)C程序包含一个或多个函数,其中必须有一个 main()圆括号指示一个函数 包含函数体,表示 main 函数结束,printf(“Welcome”);printf(“to C!n”);,printf(“WelcomentonC!n”);,程序运行结果:Welcome to C!,程序运行结果:Welcome to C!,注释/*文本*/或/不被执行以提高程序的可读性,语句(Statement)必须以;结尾格式输出函数printf()。调用标准函数,显示引号中的内容。,#include void main()int a,b,sum;/声明部分,定义变量类型 a=123;b=
9、456;/执行部分,赋值语句 sum=a+b;/执行部分,赋值语句 printf(“sum=%dn”,sum);/执行部分,输出语句 程序运行结果:sum=579,赋初值,计算,输出,定义变量,【例1.3】求两个整数的和,函数体包括变量说明部分语句执行部分,/文件包含预处理命令/将标准输入输出头文件包含到源程序中,#include void main()int a,b,c;/定义变量类型 printf(“input two numbers:n”);/提示 scanf(“%d,%d”,int max(x,y)int x,y;int z;if(xy)z=x;else z=y;return(z);,
10、【例1.4】求两个数中的较大值,程序由两个函数组成:main 函数和max 函数。,运行程序 屏幕显示提示信息;键盘输入a、b的值;屏幕显示c的值。,input two numbers:123,456 max=456,一个C程序由一个或多个函数组成,其中必须有一个主函数main()。程序执行时总是从主函数开始,main()可以置于程序的任何位置。程序中需有预处理命令(如#include),预处理命令通常放在程序的最前面。分号是C语句结束的标志,每个语句和数据定义后必须有一个分号。预处理命令、函数头和花括号“”之后不能加分号。,C语言程序基本结构,C程序书写灵活,一行可以写几个语句,一个语句可以
11、写在多个程序行上。,#include void main()int a,b,sum;a=123;b=456;sum=a+b;printf(“sum=%dn”,sum);,C语言本身没有输入输出语句,输入输出的操作是由库函数 scanf()和printf()等函数完成的。,1.4.2 C语言程序基本结构,C程序严格区分大小写。一般变量、语句等用小写字母书写;符号常量等用大写字母书写。标识符、保留字之间必须至少加一个空格以示分隔。,函数,C语言的函数有两种:标准库函数和用户定义的函数。,用户自定义函数,可有可无,数目不限。如例1.4中的 int max(int x,int y)C语言提供的库函数,
12、如输出函数printf()和输 入函数 scanf()。,函数定义:函数头+函数体 函数头:说明函数的类型、名字、参数及参数的类型。int max(int x,int y),#include void main()int a,b,sum;a=123;b=456;sum=a+b;printf(“sum=%dn”,sum);,函数体,函数头,函数体:由“”括起,包括变量声明和执行部分。,函数定义,1.4.3 C语言的字符集、关键字和标识符,字符集:C语言允许使用字符的集合字符集的组成:26个小写字母 abcdefghi.z 26个大写字母 ABCDEFG.Z 10个数字 09 其他符号+-*/=,
13、._:;?”|&!%#()空格(SPACE)制表符(Tab),C语言的关键字,关键字:C语言中预定的具有特定含义的词,也称 保留字。共有32个。分四类:类型说明:int,long,float,。语句定义:ifelse,while,for。存储类:auto,static,。长度运算符:sizeof,标识符,标识符:用来标识变量、符号常量、数组、函数的名字。组成:只能由英文字母、数字和下划线组成。第一个字符不能是数字,只能是字母或下划线。VC6.0中有效长度为1255个字符。例如:x,m1,average,k123,_1,5AN,WA-11,a lot,$11,注意:,标识符严格区分大小写 例如:
14、ABC,abc 是不同的标识符不能和C语言的关键字、用户定义的函数名以及系统库函数同名。C的“.h”头文件中经常使用以下划线开头的内部变量名,因此用户最好避免使用这类标识符。取名应尽可能见名知意。如:alfa,aver,pi,bata 等。,例:以下各标识符组中,合法的用户标识符分别为:,(1)A)PAd B)scanf C)void D)4a P#D a10 max temp(2)A)b-b B)CCP C)hiy D)_isw abc float INT(3)A)_0123 B)del_word C)list D)keep%ssiped signed*jer wind,分隔符,分隔符分隔符
15、主要有逗号和空格两种。逗号用于分隔变量或参数,空格用于分隔单词(在关键字和标识符之间必须用空格分隔)。例如:int a,b,c;max(x,y,z),1.5 应用程序的开发过程,1.5 应用程序的开发过程,编辑器,file.cfile.cpp,编译器,file.obj,连接器,file.exe,Libraries,CPU,装载程序,建立、修改、保存源文件,生成目标文件,生成可执行文件,运行可执行文件,1.5 应用程序的开发过程,在Visual C+6.0 环境下,开发和运行程序的步骤如下:1.启动VC“开始”“程序”“Microsoft Visual C+6.0”即可启动 VC6.0。2.编辑
16、、建立源文件。3.编译、连接和运行源程序。,习题,1.一个C语言程序是由组成 a)主程序 b)子程序 c)函数 d)过程2.一个完整的C语言的程序 a)至少包含一个主函数 b)至少包含一个主函数与一个子函数 c)必须由一个主函数与一个以上的子函数组成 d)必须由一个主函数与一个子函数组成,习题,3.C语言程序的执行总是从。a)main函数的入口开始 b)编译预处理命令开始 c)源程序的第一个函数开始 d)源程序的第一行语句开始,习题,4.在C语言的源程序中,主函数的位置。a)必须在源程序的最后 b)任意 c)必须在源程序的开头5.一个函数一般由两部分组成,它们分别是和。6.函数体使用_符号开始
17、,使用_符号结束。,函数头,函数体,习题,7.C程序的每条语句的结束标志是_符号。8.在C程序中,注释以_符号开始,使用_符号 结束。9.算法是 _。10.表示算法的常用方法有 _、_、_等。11.结构化程序的三种基本结构是 _、_、_。,;,/*,*/,解决某一问题所采取的方法和步骤,自然语言,流程图,伪代码,顺序结构,选择结构,循环结构,12.判断下述说法是否正确。如不正确,说明理由。,a)printf 函数总是从新行的起始位置开始打印。b)计算机会把/*和*/之间的注释文本打印到屏幕上。c)所有的变量在使用前都必须予以声明。d)C语言认为变量 number 和 NuMbEr 是相同的。e
18、)声明语句可放在函数体中的任何位置。f)打印三行输出的C语言程序必须用三条 printf 语句。g)printf 函数的格式控制串中使用转义字符 n 会把光标定位到屏幕上下一行的开始位置。,2.1 数据与数据类型2.2 常量、变量和标准函数2.3 基本运算符及其表达式,第二章 数据类型、运算符和表达式,下一章,上一章,目 录,习题,整型:包括有、无符号的基本整型、短整型、长整型实型:包括单精度实型、双精度实型 float,double字符型:用于表示和存储ASCII字符。char,2.1 数据类型,是C语言数据类型的基本型,其值不可再分解为其他类型。,一种特殊的数据类型,其值为某个量的内存地址
19、。,一种无返回值函数的数据类型。void,用新的类型名替代已有类型名使用。用typedef定义,一种由单种或多种数据类型构造而成的数据类型。数组结构共用体枚举类型,C语言的基本数据类型,2.2 常量、变量和标准函数,2.2.1 常量2.2.2 变量2.2.3 标准函数,下一节,第二章,目 录,习题,常量,常量 在程序执行期间其值保持不变的量C语言有以下几种类型的常量:整型常量实型(浮点型)常量字符常量字符串常量,有三种形式:十进制整数:八进制整数:由数字 0 开头十六进制整数:由前缀 0 x 或 0X 开头,1.整型常量,如:014-011 0177777,如:0 x11 0XAFBDE 0X
20、00FFH,如:11,-13,0,65535,1,000 21/3 104 54.10*3 01 9 9,整数又可分为:,长整型整数:用后缀 L/l 表示。012L,65536L,0XCL无符号整数:用后缀 U/u 表示。017u,0 xfdbU无符号长整数:用后缀 UL/ul 表示。15uL,实型常量又称实数,指带有小数部分的数。C语言中的实数是以十进制表示的,有两种表示形式:十进制小数形式:由数字、数符和小数点组成。例:0.123,.123,123.,0.0,-2.5,,指数形式:又称科学记数法。用E(或e)表示以10为底的指数。如:100000000 1108 1E+8 0.000012
21、5 1.2510-5 1.25E-05,0.9110-3 0.91E-03,尾数部分,指数部分,字母E/e前必须有数字,而E后面的阶码必须为整数。,2.实型常量浮点数,例:下列不合法的指数形式:,单独的小数点和单独的指数部分 如:.E-5 E10 阶码只能是整数,不能带小数点。如:1234E1.5 2.E 6.5e(2*3)E-3 5*E41012不能写成 E12,必须写成:,3.字符常量,字符常量:是用单引号括起来的一个字符 如:a,A,9,+,?,合法“a”,99999,非法在内存中,字符常量以ASCI I码存储,一个字符占一个字节。由于字符常量是按整数存储的,可以像整数一样在程序中参与相
22、关的运算。如:a 3 2;/执行结果9 7-32=65 9 9;/执行结果5 7-9=48,以“”开头的字符序列,有特定的含义。如:表示输出一个反斜杠符”表示输出一个双引号 ddd(ddd表示八进制的ASCII码)xhh(hh表示十六进制的ASCII码)例:n(回车换行)12 xa A 101 x41 注:0或000是代表ASCII码为0的字符,即空字符(NULL),表示整数0。,转义字符,【例2.1】转义字符的应用,#include void main()printf(“atbncbd100 x40n”);,abd,输出到显示屏,字符串常量:用一对双引号括起的字符序列。例:“CHINA”,“
23、a”,“$12.5”,“”,“wx53np103q”字符串长度:字符串中所有字符的个数系统自动在每个字符串的末尾加上一个空字符NULL,即0 作为字符串的结束。0是一个ASCII码为0的字符。例:“CHINA”在内存中所占的字节为:,4.字符串常量,字符常量由单引号括起来,字符串常量由双引号括起来。,字符串常量和字符常量的主要区别:,字符常量只能是单个字符,字符串常量可以含有多个字符。字符常量占一个字节,字符串常量占的字节数等于字符个数加1。比较:A与”A”的区别,若输出的字符串中含双引号(”),则要使用转义字符(”)。例:printf(“he said“I am a student.”n”)
24、;输出:he said“I am a student.”,5.符号常量,符号常量:用标识符表示的常量格式:#define 标识符 常量功能:用该标识符代表后面的常量值例:#define PI 3.1415926#define STAR*,预处理命令#define也称为宏定义,一个#define命令只能定义一个符号常量,用一行书写,不用分号结尾。,#include#define PI 3.1415926/用预处理命令定义符号常量 void main()float r,area,l;/定义变量类型为实型 scanf(“%f”,【例2.2】求半径为r的圆面积和圆周长,说明:符号常量名习惯用大写字母表
25、示该命令通常放在文件头在程序中,符号常量不允许重新赋值。例:#define PI 3.1415926 PI=5.6;或 scanf(“%f”,5.符号常量,2.2.2 变量,变量概述整型变量实型变量字符型变量变量的初始化,变量概述,变量:在程序执行期间其值可以改变的量变量在使用之前必须被声明每一个变量有名字,类型,长度和值。对变量赋值过程是“覆盖”过程,用新值去替换旧值。从内存中读出变量的值,该变量保持不变。,90,x=90;,printf(“%d”,x);,定义变量的形式:类型说明符 变量名表;例:int a,b;/*定义两个整型变量a和b*/char c;/*定义字符型变量c*/float



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机基础教学系列课程 C语言程序设计 计算机 基础 教学 系列 课程 语言程序设计

链接地址:https://www.31ppt.com/p-6342342.html