C语言程序设计4完整版教学课件全书电子讲义(最新).ppt
《C语言程序设计4完整版教学课件全书电子讲义(最新).ppt》由会员分享,可在线阅读,更多相关《C语言程序设计4完整版教学课件全书电子讲义(最新).ppt(463页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、主讲教师主讲教师:C C语言程序设计语言程序设计第一章第一章 简单简单C C程序的编写程序的编写第一节第一节 阅读简单的阅读简单的C C程序程序例例例例1.1 1.1 1.1 1.1 阅读一个简单程序。阅读一个简单程序。阅读一个简单程序。阅读一个简单程序。运行程序main()/*main()/*main()/*main()/*主函数主函数主函数主函数*/int a,b;/*int a,b;/*int a,b;/*int a,b;/*声明定义两个整型变量声明定义两个整型变量声明定义两个整型变量声明定义两个整型变量*/a=1;b=a+1;/*a=1;b=a+1;/*a=1;b=a+1;/*a=1;
2、b=a+1;/*给两个变量赋初值给两个变量赋初值给两个变量赋初值给两个变量赋初值*/printf(%d,b);/*printf(%d,b);/*printf(%d,b);/*printf(%d,b);/*输出输出输出输出b b b b的值的值的值的值*/例例例例1.2 1.2 1.2 1.2 阅读下面程序,写出结果。阅读下面程序,写出结果。阅读下面程序,写出结果。阅读下面程序,写出结果。运行程序myoutput()/*myoutput()/*myoutput()/*myoutput()/*自定义函数自定义函数自定义函数自定义函数*/printf(n*Hello!How do you do?*n
3、);printf(n*Hello!How do you do?*n);printf(n*Hello!How do you do?*n);printf(n*Hello!How do you do?*n);/*/*/*/*输出字符串输出字符串输出字符串输出字符串*/main()/*main()/*main()/*main()/*主函数主函数主函数主函数*/myoutput();/*myoutput();/*myoutput();/*myoutput();/*调用函数调用函数调用函数调用函数*/printf(*n);printf(*n);printf(*n);printf(*n);一、一、一、一、C
4、 C C C语言的程序结构语言的程序结构语言的程序结构语言的程序结构 所有所有所有所有C C C C程序都是由一个或多个文件组成,程序都是由一个或多个文件组成,程序都是由一个或多个文件组成,程序都是由一个或多个文件组成,一个文件又由一个或多个函数组成。一个文件又由一个或多个函数组成。一个文件又由一个或多个函数组成。一个文件又由一个或多个函数组成。一个函数由函数头和函数体组成。一个函数由函数头和函数体组成。一个函数由函数头和函数体组成。一个函数由函数头和函数体组成。一个一个一个一个C C C C程序有且仅有一个主程序有且仅有一个主程序有且仅有一个主程序有且仅有一个主(main)(main)(ma
5、in)(main)函数。函数。函数。函数。一个一个一个一个C C C C程序总是从程序总是从程序总是从程序总是从mainmainmainmain函数开始执行,函数开始执行,函数开始执行,函数开始执行,不管不管不管不管mainmainmainmain函数出现在任何位置。函数出现在任何位置。函数出现在任何位置。函数出现在任何位置。一、一、一、一、C C C C语言的程序结构语言的程序结构语言的程序结构语言的程序结构 C C C C程序使用程序使用程序使用程序使用“;”作为语句的终止符或作为语句的终止符或作为语句的终止符或作为语句的终止符或分隔符。分隔符。分隔符。分隔符。C C C C程序中用程序中
6、用程序中用程序中用“”表示程序的结构层表示程序的结构层表示程序的结构层表示程序的结构层次范围。次范围。次范围。次范围。可以对可以对可以对可以对C C C C程序作注释,主要是对程序功程序作注释,主要是对程序功程序作注释,主要是对程序功程序作注释,主要是对程序功能的必要说明和解释。能的必要说明和解释。能的必要说明和解释。能的必要说明和解释。二、二、二、二、C C C C语言的特点语言的特点语言的特点语言的特点 C C C C语言简洁、紧凑语言简洁、紧凑语言简洁、紧凑语言简洁、紧凑C C C C语言是一种结构化的程序设计语言语言是一种结构化的程序设计语言语言是一种结构化的程序设计语言语言是一种结构
7、化的程序设计语言C C C C语言具有丰富的数据类型语言具有丰富的数据类型语言具有丰富的数据类型语言具有丰富的数据类型C C C C语言提供了丰富的运算符语言提供了丰富的运算符语言提供了丰富的运算符语言提供了丰富的运算符C C C C语言可以直接对硬件进行操作语言可以直接对硬件进行操作语言可以直接对硬件进行操作语言可以直接对硬件进行操作C C C C语言的移植性好语言的移植性好语言的移植性好语言的移植性好三、三、三、三、C C C C程序的书写格式程序的书写格式程序的书写格式程序的书写格式 每行通常写一条语句每行通常写一条语句每行通常写一条语句每行通常写一条语句每条语句结束时加分号每条语句结束
8、时加分号每条语句结束时加分号每条语句结束时加分号“:”作为语句作为语句作为语句作为语句结束符结束符结束符结束符花括号内的语句通常向右缩进两个字符花括号内的语句通常向右缩进两个字符花括号内的语句通常向右缩进两个字符花括号内的语句通常向右缩进两个字符或一个水平制表符或一个水平制表符或一个水平制表符或一个水平制表符适当采取缩进格式适当采取缩进格式适当采取缩进格式适当采取缩进格式在程序中尽量使用注释信息在程序中尽量使用注释信息在程序中尽量使用注释信息在程序中尽量使用注释信息 第二节第二节 设计简单设计简单C C程序程序例例例例1.3 1.3 1.3 1.3 设计程序:已知设计程序:已知设计程序:已知设
9、计程序:已知a=3,b=5a=3,b=5a=3,b=5a=3,b=5;求求求求sum=2*a+b;sum=2*a+b;sum=2*a+b;sum=2*a+b;运行程序main()main()main()main()int a,b,sum;int a,b,sum;int a,b,sum;int a,b,sum;a=3;b=5;a=3;b=5;a=3;b=5;a=3;b=5;sum=2*a+b;sum=2*a+b;sum=2*a+b;sum=2*a+b;printf(sum=%d,sum);printf(sum=%d,sum);printf(sum=%d,sum);printf(sum=%d,su
10、m);一、编程实例一、编程实例一、编程实例一、编程实例二、二、二、二、算法及算法表示算法及算法表示算法及算法表示算法及算法表示1 1 1 1、算法的概念、算法的概念、算法的概念、算法的概念 程序算法数据结构程序算法数据结构程序算法数据结构程序算法数据结构 所谓算法,就是一个有穷规则的集合,所谓算法,就是一个有穷规则的集合,所谓算法,就是一个有穷规则的集合,所谓算法,就是一个有穷规则的集合,其中的规则确定了一个解决某个特定类型其中的规则确定了一个解决某个特定类型其中的规则确定了一个解决某个特定类型其中的规则确定了一个解决某个特定类型问题的运算序列。问题的运算序列。问题的运算序列。问题的运算序列。
11、算法的两大要素算法的两大要素算法的两大要素算法的两大要素操作操作操作操作控制结构控制结构控制结构控制结构 例题:某人乘坐火车从本地出发(秦皇岛),例题:某人乘坐火车从本地出发(秦皇岛),例题:某人乘坐火车从本地出发(秦皇岛),例题:某人乘坐火车从本地出发(秦皇岛),终点到北京出差。终点到北京出差。终点到北京出差。终点到北京出差。操作:买票,候车,坐车等。操作:买票,候车,坐车等。操作:买票,候车,坐车等。操作:买票,候车,坐车等。控制结构:控制结构:控制结构:控制结构:秦皇岛站秦皇岛站秦皇岛站秦皇岛站 直达直达直达直达 北京站北京站北京站北京站秦皇岛站秦皇岛站秦皇岛站秦皇岛站 天津站天津站天津
12、站天津站 北京站北京站北京站北京站说明:说明:说明:说明:每一个算法是由一系列的操作组成,同每一个算法是由一系列的操作组成,同每一个算法是由一系列的操作组成,同每一个算法是由一系列的操作组成,同 一操作序列,按不同的顺序执行,会得一操作序列,按不同的顺序执行,会得一操作序列,按不同的顺序执行,会得一操作序列,按不同的顺序执行,会得 出不同的结果和执行效率。控制结构即出不同的结果和执行效率。控制结构即出不同的结果和执行效率。控制结构即出不同的结果和执行效率。控制结构即 控制组成算法的各操作的执行顺序。控制组成算法的各操作的执行顺序。控制组成算法的各操作的执行顺序。控制组成算法的各操作的执行顺序。
13、程序的三种基本控制结构程序的三种基本控制结构 顺序结构顺序结构顺序结构顺序结构选择结构选择结构选择结构选择结构循环结构循环结构循环结构循环结构 两数进行交换两数进行交换两数进行交换两数进行交换A A A AB B B B交交交交 换换换换C C C C如下执行过程:如下执行过程:如下执行过程:如下执行过程:C=A C=A C=A C=A;A=B A=B A=B A=B;B=C B=C B=C B=C;A AC CB BA AC CB B三个数中取最大值三个数中取最大值三个数中取最大值三个数中取最大值算法算法算法算法1 1:采用两两比较找大数。:采用两两比较找大数。:采用两两比较找大数。:采用两
14、两比较找大数。实现步骤:实现步骤:实现步骤:实现步骤:(1 1)首先用)首先用)首先用)首先用a a与与与与c c进行比较;进行比较;进行比较;进行比较;(2 2)其次用)其次用)其次用)其次用c c与与与与b b进行比较;进行比较;进行比较;进行比较;(3 3)再次用)再次用)再次用)再次用a a与与与与b b进行比较;进行比较;进行比较;进行比较;acacacacbcbcbbabababmaxbmaxbmaxcmaxcmaxcmaxcmax=amax=a;max=cmax=c;(4 4)最后输出最大值)最后输出最大值)最后输出最大值)最后输出最大值maxmax。实现过程如下:实现过程如下:
15、实现过程如下:实现过程如下:int a,b,c,max;int a,b,c,max;max=a;max=a;if (maxb)max=b;if (maxb)max=b;if (maxc)max=c;if (maxc)max=c;选择选择选择选择结构结构结构结构三、多个数排序三、多个数排序三、多个数排序三、多个数排序升序升序升序升序有如下一组数据:有如下一组数据:有如下一组数据:有如下一组数据:5 7 6 9 25 7 6 9 2实现步骤:实现步骤:实现步骤:实现步骤:(1 1 1 1)首先用第一个数与第二个数比较,若大于第)首先用第一个数与第二个数比较,若大于第)首先用第一个数与第二个数比较,
16、若大于第)首先用第一个数与第二个数比较,若大于第二个数,就进行交换;接着用第二数与第三个数比二个数,就进行交换;接着用第二数与第三个数比二个数,就进行交换;接着用第二数与第三个数比二个数,就进行交换;接着用第二数与第三个数比较,依次类推,直到第四个数与第五个数比较为止较,依次类推,直到第四个数与第五个数比较为止较,依次类推,直到第四个数与第五个数比较为止较,依次类推,直到第四个数与第五个数比较为止5 7 6 9 25 7 6 9 25 6 7 9 25 6 7 9 25 6 7 2 95 6 7 2 9(2 2)然后从前四个数中,再重复()然后从前四个数中,再重复()然后从前四个数中,再重复(
17、)然后从前四个数中,再重复(1 1)过程;)过程;)过程;)过程;5 6 7 2 95 6 7 2 95 6 2 7 95 6 2 7 9(3 3)依次类推,从前三个数中,重复上述比较;)依次类推,从前三个数中,重复上述比较;)依次类推,从前三个数中,重复上述比较;)依次类推,从前三个数中,重复上述比较;5 6 2 7 95 6 2 7 95 2 6 7 95 2 6 7 9(4 4)最后用从前二个数中,再重复上述过程。)最后用从前二个数中,再重复上述过程。)最后用从前二个数中,再重复上述过程。)最后用从前二个数中,再重复上述过程。5 2 6 7 95 2 6 7 92 5 6 7 92 5
18、6 7 9思考:如果按降序排列,如何实现?思考:如果按降序排列,如何实现?思考:如果按降序排列,如何实现?思考:如果按降序排列,如何实现?上述多个数进行排序问题,采用什么上述多个数进行排序问题,采用什么上述多个数进行排序问题,采用什么上述多个数进行排序问题,采用什么 控制结构合理?控制结构合理?控制结构合理?控制结构合理?四、求四、求四、求四、求1 1 1 12 2 2 23 3 3 3 99999999100100100100的累加和。的累加和。的累加和。的累加和。1 12 23 34 45 5 97 9798989999100100观察观察观察观察:1 1 1 1、相邻两数相差、相邻两数相
19、差、相邻两数相差、相邻两数相差1 1 1 1;假设:假设:假设:假设:a=1a=1;sum=0sum=0;sum=sum+asum=sum+a;a=a+1;a=a+1;sum=a;sum=a;a=a+1;a=a+1;sum=sum+a;sum=sum+a;a=a+1;a=a+1;sum=sum+a;sum=sum+a;2 2 2 2、数据依次加、数据依次加、数据依次加、数据依次加1 1 1 1可得到上述数列;可得到上述数列;可得到上述数列;可得到上述数列;衡量算法的正确性衡量算法的正确性衡量算法的正确性衡量算法的正确性 有穷性有穷性有穷性有穷性确定性确定性确定性确定性有效性有效性有效性有效性没
20、有输入或有多个输入没有输入或有多个输入没有输入或有多个输入没有输入或有多个输入有一个或多个输出有一个或多个输出有一个或多个输出有一个或多个输出 2 2 2 2、算法的描述、算法的描述、算法的描述、算法的描述 设计算法时,可以使用不同的算法描设计算法时,可以使用不同的算法描设计算法时,可以使用不同的算法描设计算法时,可以使用不同的算法描述工具,常用的有传统流程图、述工具,常用的有传统流程图、述工具,常用的有传统流程图、述工具,常用的有传统流程图、N-SN-SN-SN-S图、图、图、图、自然语言、伪代码等。自然语言、伪代码等。自然语言、伪代码等。自然语言、伪代码等。流程图描述流程图描述流程图描述流
21、程图描述 开始开始开始开始/结结结结束框束框束框束框处处处处理框理框理框理框判断框判断框判断框判断框输输输输入入入入/输输输输出框出框出框出框流程流程流程流程线线线线连连连连接符接符接符接符开开开开 始始始始输入输入输入输入a a a a,b b b b输出输出输出输出maxmaxmaxmax结结结结 束束束束max=bmax=bmax=bmax=bmax=amax=amax=amax=aT F T F T F T F ababababN-SN-SN-SN-S图的描述图的描述图的描述图的描述 假假假假max=amax=amax=amax=a真真真真假假假假maxbmaxbmaxbmaxbmax
22、=bmax=bmax=bmax=b真真真真maxcmaxcmaxcmax*/%-+-(1)(2)(3)说明:“-”可为单目运算符时,右结合性两整数相除,结果为整数%要求两侧均为整型数据例 5/2 =-5/2.0 =例 5%2 =-5%2 =1%10 =5%1 =5.5%2例 5/2 =2 -5/2.0=-2.5例 5%2 =1 -5%2 =-1 1%10 =1 5%1 =0 5.5%2 ()2 2 2 2、自反算、自反算、自反算、自反算术赋值术赋值术赋值术赋值运算符运算符运算符运算符 a=2 a=2 a=2 a=2 a=4;a=4;a=4;a=4;a-=2;a-=2;a-=2;a-=2;a-=
23、b a-=b a-=b a-=b a=a-ba=a-ba=a-ba=a-b自反减自反减自反减自反减-=-=-=-=a=6a=6a=6a=6a=4;a=4;a=4;a=4;a+=2;a+=2;a+=2;a+=2;整型或整型或整型或整型或实实实实 型型型型整型或整型或整型或整型或实实实实型型型型 a+=b a+=b a+=b a+=b a=a+b a=a+b a=a+b a=a+b自反加自反加自反加自反加+=+=+=+=a=0a=0a=0a=0a=4;a=4;a=4;a=4;a%=2;a%=2;a%=2;a%=2;整整整整 型型型型整型整型整型整型a%=b a%=b a%=b a%=b a=a%b
24、a=a%ba=a%ba=a%b自反模自反模自反模自反模%=%=%=%=a=2a=2a=2a=2a=4;a=4;a=4;a=4;a/=2;a/=2;a/=2;a/=2;a/=b a/=b a/=b a/=b a=a/ba=a/ba=a/ba=a/b自反除自反除自反除自反除/=/=/=/=a=8 a=8 a=8 a=8a=4;a=4;a=4;a=4;a*=2;a*=2;a*=2;a*=2;从右从右从右从右向左向左向左向左整型或整型或整型或整型或实实实实型型型型双目双目双目双目整型或整型或整型或整型或实实实实型型型型a*=b a*=b a*=b a*=b a=a*ba=a*ba=a*ba=a*b自反
25、乘自反乘自反乘自反乘*=*=*=*=表达表达表达表达 式式式式值值值值举举举举例例例例结结结结合合合合方向方向方向方向运算运算运算运算结结结结果果果果对对对对象象象象个数个数个数个数运算运算运算运算对对对对象象象象运算运算运算运算规则规则规则规则 名称名称名称名称运算符运算符运算符运算符复合的赋值运算符复合的赋值运算符1复合运算符:复合运算符:10种种 +=,=,*=,/=,%=,&,|,位运算(左移、右移、按位与、位运算(左移、右移、按位与、按位或、按位异或)按位或、按位异或)例如:例如:a+=3 相当于相当于 a=a+3 x*=y+8 相当于相当于 x=x*(y+8)x%=3 相当于相当于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 完整版 教学 课件 全书 电子 讲义 最新
限制150内