C语言教学课件PPT课件.ppt
- 文档编号:18898923
- 上传时间:2024-02-10
- 格式:PPT
- 页数:291
- 大小:1.77MB
C语言教学课件PPT课件.ppt
《C语言教学课件PPT课件.ppt》由会员分享,可在线阅读,更多相关《C语言教学课件PPT课件.ppt(291页珍藏版)》请在冰点文库上搜索。
1.教学内容第一章第一章C语言概述语言概述第二章第二章算法算法第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式第四章第四章最简单的最简单的C程序设计程序设计第五章第五章选择结构程序设计选择结构程序设计第六章第六章循环控制循环控制第七章第七章数组数组第八章第八章函数函数第九章第九章预处理命令预处理命令第十章第十章指针指针第十一章第十一章结构体结构体第十三章第十三章文件文件2.前前言言前前言言一、计算机语言一、计算机语言1、机器语言、机器语言2、汇编语言、汇编语言3、高级语言、高级语言4、高级语言向机器语言的过渡、高级语言向机器语言的过渡高级语言高级语言高级语言高级语言源程序源程序源程序源程序机器语言机器语言机器语言机器语言目标程序目标程序目标程序目标程序计算结果计算结果计算结果计算结果编译编译编译编译解释解释解释解释执行执行执行执行机器指令的集合机器指令的集合符号化的机器语言符号化的机器语言通用自然的算法语言通用自然的算法语言3.前前言言二、程序与程序设计二、程序与程序设计完成某一功能的计算机完成某一功能的计算机指令的有序集合指令的有序集合1、程序、程序2、程序设计、程序设计设计、编制、调试程序设计、编制、调试程序的过程的过程4.3、程序设计的基本步骤、程序设计的基本步骤
(1)分析问题分析问题
(2)确定解题思路和算法确定解题思路和算法(3)编制流程图编制流程图(4)编写源程序编写源程序(5)静态检查静态检查(6)上机调试上机调试(7)正式运行正式运行前前言言5.&本章内容本章内容1.1C语言发展史语言发展史1.2C语言特点语言特点1.3简单简单C程序分析程序分析第一章第一章C语言概述语言概述返回返回6.第一章第一章C语言概述语言概述第一章第一章C语言概述语言概述1.1C语言发展史语言发展史1960ALGOL60(AlgorithmicLanguage)198787ANSIC1990ISOC1972C(取取BCPL第二个字母第二个字母)1970B(取取BCPL第一个字母第一个字母)1978标准标准C1983ANSIC1967BCPL(BasicCombinedProgrammingLanguage)跳转跳转7.第一章第一章C语言概述语言概述1.2C语言特点语言特点1、简练、自由、结构化、简练、自由、结构化(32个关键字、个关键字、9种控制语句)种控制语句)2、运算符丰富(附录、运算符丰富(附录)34种种3、数据结构丰富、数据结构丰富4、可直接对硬件进行操作、可直接对硬件进行操作5、目标程序质量高、目标程序质量高6、可移植性好、可移植性好8.第一章第一章C语言概述语言概述1.3简单简单C程序分析程序分析例例1.1打印(显示)一串字符打印(显示)一串字符。
运行结果运行结果:
Thisisanexample./*example1.1*/main()printf(“Thisisanexample.n”);9.第一章第一章C语言概述语言概述例例1.2已知角度值已知角度值45,求正弦值的求正弦值的2倍。
倍。
/*example1.2*/#include“math.h”main()floatx,y;x=45;y=2*sin(x*3.14/180);printf(“Y=%fn”,y);运行结果运行结果:
Y=1.41365010.第一章第一章C语言概述语言概述例例1.3已知三角形三边已知三角形三边a,b,c,求面积。
求面积。
/*example1.3*/#include“math.h”main()floata,b,c,p,s;scanf(“%f,%f,%f”,&a,&b,&c);p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c);printf(“P=%fnS=%f”,p,s);输入:
输入:
4,5,6输出:
输出:
P=7.500000S=9.92156711.第一章第一章C语言概述语言概述max(intx,inty)main()/*maxnumber*/intz;inta,b,c;if(xy)z=x;scanf(“%d,%d”,&a,&b);elsez=y;c=max(a,b);return(z);printf(“max=%dn”,c);例例1.4已知整数已知整数a,b,求求其中的最大数。
其中的最大数。
12.第一章第一章C语言概述语言概述C程序结构程序结构1、C程序由函数构成程序由函数构成C程序程序=一个主函数(一个主函数(main函数)函数)一个主函数一个主函数+若干其他函数若干其他函数(子或库子或库)说明部分说明部分2、函数、函数函数体函数体数据定义数据定义执行部分执行部分(语句)(语句)TurboC有有300多个多个跳转跳转3、语句书写自由,后带分号、语句书写自由,后带分号“;”4、可用、可用/*/对对C程序作注释程序作注释前一页前一页13.&本章内容本章内容2.1算法的概念算法的概念2.4算法的表示算法的表示2.5结构化程序设计结构化程序设计第二章第二章算法算法返回返回14.第二章第二章算法算法第二章第二章算法算法程序程序=数据结构数据结构+算法算法程序程序=数据结构数据结构+算法算法+程序设计方法程序设计方法+语言工具和环境语言工具和环境数据结构数据结构:
对数据的描述对数据的描述算法算法:
对操作的描述对操作的描述#include“math.h”main()floatx,y;x=45;y=2*sin(x*3.14/180);printf(“Y=%fn”,y);15.例如:
例如:
1+2+3+100=5050或或100+1+99+2+98+49+51+50=100+49*100+50=5050第二章第二章算法算法2.1算法的概念算法的概念算法算法:
为解决一个问题而采取的方法和步骤。
为解决一个问题而采取的方法和步骤。
16.第二章第二章算法算法2.4算法的表示算法的表示(用流程图表示算法用流程图表示算法)起止框起止框处理框处理框判断框判断框输入输入/出框出框流程线流程线连接点连接点注释框注释框17.第二章第二章算法算法例例2.1计算计算265的平方根的平方根顺序结构顺序结构开始开始X=265Y=X输出输出Y结束结束NS图图X=265Y=XY开始开始结束结束18.第二章第二章算法算法例例2.2打印打印X的绝对值的绝对值分支结构分支结构NS图图X=0yn打印打印x打印打印-xX=0?
x-x结束结束开始开始19.第二章第二章算法算法例例2.3计算计算1到到100的和的和循环结构循环结构i=100nNS图图i=1,s=0s=s+ii=i+1打印打印syi=1,s=0s=s+ii=i+1打印打印s当当i=!
=逻辑运算符逻辑运算符!
&|赋值运算符赋值运算符=条件运算符条件运算符?
:
逗号运算符逗号运算符,指针运算符指针运算符*&强制类型转换运算符强制类型转换运算符(类型关键字类型关键字)46.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式二、算术表达式二、算术表达式1、定义:
用、定义:
用算术运算符算术运算符和和括号括号将将运算对象运算对象连连接起来且接起来且符合符合C语法语法规则规则的式子的式子2、运算顺序、运算顺序a*b/c-1.5+a47.3、运算类型(、运算类型(3.7混合运算混合运算)
(1)同类型运算结果类型不变同类型运算结果类型不变
(2)不同类型运算先按类型级不同类型运算先按类型级(3)别低向高转换成同一类型,别低向高转换成同一类型,(4)再计算再计算doublefloatlongunsignedintchar,short高高低低10+a+i*f-d/ldoubledoubledoubleint4、优先级和结合性、优先级和结合性double第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式48.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式(类型关键字类型关键字)(表达式表达式)例:
例:
(int)a(float)(5%3)(double)(x+y)三、强制类型转换运算三、强制类型转换运算注意注意:
(int)x+y只转换只转换x的类型后与的类型后与y相加相加(int)x不等同于不等同于int(x)49.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式举例举例3.10main()inti;floatx;x=3.6;i=(int)x;printf(“x=%f,i=%dn”,x,i);运行结果:
运行结果:
x=3.600000,i=350.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式四、自增、自减运算四、自增、自减运算1、运算规则、运算规则+i-i使用前使使用前使i值值加加(减减)1i+i-使用后使使用后使i值值加加(减减)12、注意、注意
(1)只能用于变量只能用于变量
(2)右结合方向右结合方向(3)使用时谨防出错使用时谨防出错j=+i;j=i+;相当于相当于i=i+1;j=i;j=i;i=i+1;51.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式3、例、例52.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式3.9赋值运算符和赋值表达式赋值运算符和赋值表达式一、赋值运算符及其操作一、赋值运算符及其操作=将一个表达式的值赋给一个变量将一个表达式的值赋给一个变量二、赋值表达式二、赋值表达式说明:
说明:
(1)发生类型转换(自学发生类型转换(自学60-61页)页)
(2)右结合右结合例:
例:
x=-b/(2*a)a=b=c=5a=(b=4)+(c=6)那么那么a=5=b=c?
53.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式三、复合赋值运算三、复合赋值运算复合赋值运算符复合赋值运算符=运算符运算符+赋值号赋值号例:
例:
a+=3a+=3a=a+3a*=x+ya*=x+ya=a*(x+y)a%=ba%=ba=a%b例例:
设设a=3求下列表达式的值求下列表达式的值a+=a-=a*aa+=(a-=a*a)a+=(a=a-a*a)a=a+(a=a-a*a)-1254.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式3.10逗号运算符和逗号表达式逗号运算符和逗号表达式1、逗号表达式、逗号表达式表达式表达式1,表达式,表达式2,表达式表达式n2、运算规则、运算规则从左到右依次计算各表达式的值,以从左到右依次计算各表达式的值,以表达式表达式n的值作为最终值(其优先级最低)的值作为最终值(其优先级最低)例:
比较例:
比较(设设a=3)a=3*5,a*4a=(3*5,a*4)计算后:
计算后:
值值60,a=15a=1255.第三章第三章数据类型、运算符与表达式数据类型、运算符与表达式举例举例3.11main()inti;floatf=7.2;printf(“i=%dn”,(f+=4,i=f);printf(“f=%fn”,f);运行结果:
运行结果:
i=11f=11.20000056.&本章内容本章内容4.1C语句概述语句概述4.2赋值语句赋值语句4.3I/O的概念及在的概念及在C语言中的实现语言中的实现4.4字符数据的输入字符数据的输入/输出输出4.5格式输入与输出格式输入与输出第四章第四章最简单的最简单的CC程序设计程序设计返回返回57.第四章第四章最简单的最简单的C程序设计程序设计4.1C语句概述语句概述第四章第四章最简单的最简单的CC程序设计程序设计C语句语句控制语句(条件、分支、循环)控制语句(条件、分支、循环)函数调用语句(函数加分号)函数调用语句(函数加分号)表达式语句(表达式加分号)表达式语句(表达式加分号)空语句(一个单独的分号)空语句(一个单独的分号)复合语句(用复合语句(用将若干语句括起)将若干语句括起)58.第四章第四章最简单的最简单的C程序设计程序设计4.2赋值语句赋值语句语句格式:
语句格式:
赋值表达式;赋值表达式;例如:
例如:
if(a=b)0)t=a;if(a=b)x=a;if(a=b)y=a;在在if后面的小括号内必须是表达式后面的小括号内必须是表达式59.CC程序最基本的成分是语句程序最基本的成分是语句目前我们已掌握的语句:
目前我们已掌握的语句:
变量说明语句变量说明语句:
inta,b,c;:
inta,b,c;表达式语句:
表达式语句:
x+y;x+y;特别地:
特别地:
a=5;a=5;赋值语句赋值语句60.可以编写简单程序如:
可以编写简单程序如:
main()main()intx,y;intx,y;x=5;x=5;y=2*x*x+3*x-1;y=2*x*x+3*x-1;该程序语法上完整,但还缺少输出。
该程序语法上完整,但还缺少输出。
61.数据的输出数据的输出用输出函数实现用输出函数实现,其中的两种输出函数:
其中的两种输出函数:
1.putchar1.putchar函数函数(字符输出函数)(字符输出函数)用于输出一个字符。
用于输出一个字符。
如如:
putchar(a);putchar(100);charc=b;putchar(c);62.例例:
输出单词:
输出单词BoyBoy的完整程序:
的完整程序:
#include“stdio.h”注意该语句的作用注意该语句的作用main()chara,b,c;a=B;b=o;c=y;putchar(a);putchar(b);putchar(c);63.2.printf2.printf函数(格式输出函数)函数(格式输出函数)任意类型、任意格式、任意个数。
任意类型、任意格式、任意个数。
例如:
例如:
inta=100,b=56;inta=100,b=56;printf(“a=%d,b=%d”,a,b);printf(“a=%d,b=%d”,a,b);普通字符普通字符格式说明格式说明格式控制格式控制输出表列输出表列输出结果:
输出结果:
a=100,b=56a=100,b=56“%”“%”后的字符称格式字符,不同格式字符对应不同的数据类型。
后的字符称格式字符,不同格式字符对应不同的数据类型。
64.dd格式符:
按整数格式输出格式符:
按整数格式输出几种用法:
几种用法:
%d%d不指定宽度,按实际宽度输出不指定宽度,按实际宽度输出%md%md按指定宽度输出,按指定宽度输出,mm为宽度为宽度%ld%ld用于输出长整型数用于输出长整型数65.例:
例:
inta=125,b=453;inta=125,b=453;longc=65535;longc=65535;printf(“a=%d,b=%5d,c=%ld”,a,b,c);printf(“a=%d,b=%5d,c=%ld”,a,b,c);输出结果:
输出结果:
a=125,b=453,c=65535a=125,b=453,c=6553566.cc格式符:
用于输出字符格式符:
用于输出字符charc=A;charc=A;printf(“c=%c,%c”,c,B);printf(“c=%c,%c”,c,B);输出结果输出结果:
c=A,Bc=A,B输输出出对对象象既既可可以以是是字字符符变变量量、字字符符常常量量,还还可可以以是整型表达式。
是整型表达式。
67.如:
如:
inta=100;inta=100;charb=A;charb=A;printf(“n%d,%c”,a,a);printf(“n%d,%c”,a,a);printf(“n%c,%d”,b,b);printf(“n%c,%d”,b,b);输出结果:
输出结果:
100,d100,dA,65A,6568.完整前面的程序:
完整前面的程序:
完整前面的程序:
完整前面的程序:
main()main()intx,y;intx,y;x=5;x=5;y=2*x*x+3*x-1;y=2*x*x+3*x-1;printf(“ny=%d”,y);printf(“ny=%d”,y);69.例例4.1已知三角形三边已知三角形三边a,b,c,求面积求面积#include“math.h”main()floata,b,c,p,s;scanf(“%f,%f,%f”,&a,&b,&c);p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c);printf(“p=%fns=%fn”,p,s);第四章第四章最简单的最简单的C程序设计程序设计70.第四章第四章最简单的最简单的C程序设计程序设计例例4.2已知整型变量已知整型变量x,y的值分别是的值分别是3和和5,试将它们的值互换。
试将它们的值互换。
intx=3,y=5,z;z=x;x=y;y=z;zy35x35371.第四章第四章最简单的最简单的C程序设计程序设计4.3字符数据的输入字符数据的输入/输出输出2、语句功能:
从指定设备、语句功能:
从指定设备读一个字符读一个字符输出输出c的值的值(字符字符)1、语句格式、语句格式输入:
输入:
getchar();输出:
输出:
putchar(c);3、说明、说明使用标准使用标准I/O函数时,应在程序前加预函数时,应在程序前加预编译命令:
编译命令:
#include“stdio.h”字符变字符变量量72.第四章第四章最简单的最简单的C程序设计程序设计例例4.3输入一个字符并把它输出出来输入一个字符并把它输出出来#include“stdio.h”main()charc;c=getchar();putchar(c);73.第四章第四章最简单的最简单的C程序设计程序设计1、语句格式、语句格式输入输入scanf(格式控制,地址表列格式控制,地址表列);输出输出printf(格式控制,输出表列格式控制,输出表列);2、语句功能、语句功能按按格式控制格式控制描述的格式给描述的格式给地址表列地址表列中的量中的量输入值或输出输入值或输出输出表列输出表列中各量的值中各量的值3、格式控制、格式控制“”括起来的一串括起来的一串格式字符格式字符和其它字符和其它字符4.4格式输入与输出格式输入与输出74.第四章第四章最简单的最简单的C程序设计程序设计4、格式字符、格式字符指定输出宽度在格式符中插入:
指定输出宽度在格式符中插入:
m.n例:
例:
%10d%10.4f%12.5e75.&本章内容本章内容5.1关系运算符和关系表达式关系运算符和关系表达式5.2逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式5.3if语句语句5.4switch语句语句4.5格式输入与输出格式输入与输出第五章第五章选择结构程序设计选择结构程序设计返回返回76.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制第五章第五章选择结构程序设计选择结构程序设计5.1关系运算符和关系表达式关系运算符和关系表达式一、运算符与优先级一、运算符与优先级(左结合性左结合性)=!
=!
=同级同级同级同级高高低低算术运算算术运算关系运算关系运算赋值运算赋值运算高高低低77.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制二、关系表达式二、关系表达式1、关系表达式的形式、关系表达式的形式2、关系表达式的值、关系表达式的值1真真0假假下列是合法的关系表达式:
下列是合法的关系表达式:
a+bc+d(a=3)b)=(cd)注意:
注意:
f=abc表达式的值。
如:
表达式的值。
如:
0x3&2|2b)&(n=cd)当当a=1,b=2,c=3,d=4,m=1,n=1时,执行结时,执行结果果m=0,(n=cd)不被执行不被执行,n仍然为仍然为13、运算中一旦能确定其值,终止计算、运算中一旦能确定其值,终止计算如计算:
如计算:
a&b&ca|b|c2、逻辑运算的对象并非仅限于逻辑量、逻辑运算的对象并非仅限于逻辑量C判断处理的原则判断处理的原则非非0真真0假假例例if(-5)x=10;elsex=0;思考题思考题:
上式去掉括号后上式去掉括号后m=ab&n=cd结果如何结果如何?
81.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制5.3if语句(条件语句)语句(条件语句)一、语句格式一、语句格式任意表达式任意表达式可以是复可以是复合语句合语句格式格式1:
if(e)语句语句格式格式2:
if(e)语句语句1else语句语句2格式格式3:
if(e1)语句语句1elseif(e2)语句语句2elseif(e3)语句语句3.elseif(em)语句语句melse语句语句n82.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制二、语句功能二、语句功能格式格式1:
if(e)语句语句计算计算e的的值并判断值并判断。
e值值非非0,则执行,则执行语句语句;否;否则,执行则,执行下条语句下条语句。
格式格式2:
if(e)语句语句1else语句语句2计算计算e的的值并判断。
值并判断。
e值值非非0,则执行,则执行语句语句1;否;否则,执行则,执行语句语句2。
下条语句下条语句语句语句1语句语句2e非非00下条语句下条语句e语句语句非非00goto83.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制格式格式3:
if(e)语句语句1elseif(e)语句语句2elseif(e)语句语句3.elseif(e)语句语句melse语句语句n123m计算计算e1的的值并判断,值并判断,其其值值非非0执行执行语句语句1;否则,判断;否则,判断e2的的值,值,其其值值非非0执行执行语句语句2;否则,判断否则,判断e3的的值,值,其其值值非非0执行执行语句语句3;否则,;否则,.判判断断em的的值,值,其其值值非非0执行执行语句语句m;否则,否则,执行执行语句语句n00e1e3eme2语句语句1语句语句3语句语句2语句语句m语句语句n下条语句下条语句非非0非非0非非0非非000.84.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制例例5.1从键盘输入两个整型数,输出最大数。
从键盘输入两个整型数,输出最大数。
main()inta,b;scanf(“%d,%d”,&a,&b);if(a=b)printf(“max=%dn”,a);if(ba)printf(“max=%dn”,b);开开始始enda,babaa)a=b;printf(“max=%dn”,a);开开始始enda,bbaaa=b非非0086.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制例例5.2输入两个整型数,按大小输出。
输入两个整型数,按大小输出。
main()inta,b,temp;scanf(“%d,%d”,&a,&b);if(ba)temp=a;a=b;b=temp;printf(“%d,%dn”,a,b);开开始始enda,bbaa,bab非非0087.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制例例5.3输入互不相等的三个数,按从小到大输入互不相等的三个数,按从小到大顺序输出它们。
顺序输出它们。
分析:
设已知的三个数为分析:
设已知的三个数为a,b,c。
(1)可直接通过逻辑表达式和条件语句可直接通过逻辑表达式和条件语句设计程序。
设计程序。
(2)可通过条件语句和互换变量值设计)可通过条件语句和互换变量值设计程序,即经过处理后使:
程序,即经过处理后使:
abc88.第五章第五章逻辑运算和判断选取控制逻辑运算和判断选取控制方法(方法
(1):
):
main()floata,b,c;scanf(“%f%f%f”,&a,&b,&c);if(ab&bc)printf(“%f,%f,%f”,a,b,c);if(ac&cb)printf(“%f,%f,%f”,a,c,b);if(ba&ac)printf(“%f,%f,%f”,b,a,c);if(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 教学 课件 PPT