C语言新教材PPT课堂课件-第4章顺序程序设计.ppt

上传人:君**** 文档编号:83281738 上传时间:2023-03-29 格式:PPT 页数:41 大小:377KB
返回 下载 相关 举报
C语言新教材PPT课堂课件-第4章顺序程序设计.ppt_第1页
第1页 / 共41页
C语言新教材PPT课堂课件-第4章顺序程序设计.ppt_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《C语言新教材PPT课堂课件-第4章顺序程序设计.ppt》由会员分享,可在线阅读,更多相关《C语言新教材PPT课堂课件-第4章顺序程序设计.ppt(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第4章 顺序程序设计4.1 C语句概述语句概述 和其他高级语言一样,C语言的语句用来向计算机系统发出操作指令。一个实际的程序应当包含若干语句。对于C语言的语句可以分为以下几类:C语言的基本语句C C语言数据操作语句语言数据操作语句简单语句空语句(;)复合语句(一条或多条语句)表达式语句(表达式;)函数调用语句(函数名(参数表);)流程控制语句结构化语句条件语句(if语句,switch语句)循环语句 while语句do-while语句 for语句非结构化语句 break语句continue语句 return语句 非限定转向语句 4.1.1 简单语句1.表达式语句由表达式组成的语句称为表达式语句。

2、一般形式为:表达式;表达式;注意:分号是C语言语句的结束标志。表达式语句可分为运算符表达式语句和赋值语句。(1)运算符表达式语句 运算符表达式语句由运算符表达式后跟一个分号组成。例如:i+;语句的功能是,变量i的值增l。-j;语句的功能是,变量j的值减l。(2)赋值语句 赋值浯句由赋值表达式后跟一个分号组成。例如:xl;*给x赋值为l*x=x*3*cos(x);*计算表达式的值,并赋给x*2函数调用语句函数调用语句函数调用语句由函数调用表达式后跟一个分号组成,其作用主要是完成特定的任务。例如:scanf(f,&x);*输入函数调用语句,输入变量x的值*printf(f,x);*输出函数调用语句

3、,输出变量x的值*函数调用语句的一般形式是:函数名(参数列表);3.空语句空语句用一个分号表示,其一般形式为:;它在语法上占有一个简单语句的位置,而执行该语句不做任何操作。空语句常用于循环语句中,构成空循环。4.复合语句复合语句是由花括号将多条语句组合在一起而构成的,在语法上相当于一条语句。如下面就是一个复合语句:z=x+y;t=z/100;printf(“%f”,t);使用复合语句应注意:复合语句中最后一个语句中的最后分号不能忽略不写,同时在复合语句结束的“”之后,不需要再加分号。4.2 赋值语句赋值语句 赋值语句是由赋值表达式加上一个分号构成。由于赋值语句应用十分普遍。C语言的赋值语句具有

4、其他高级语言的赋值语句的一切特点和功能。但也应当注意到它们的不同:(1)C语言中的赋值号“=”是一个运算符,在其他大多数语言中赋值号不是运算符。(2)关于赋值表达式与赋值语句的概念,其他多数高级语言没有“赋值表达式”这一概念。作为赋值表达式可以包括在其他表达式中,如:if(a=b)0)t=a;而:if(a=b;)0)t=a;是错的。4.3 数据输入输出的概念及在数据输入输出的概念及在C语言中的实现语言中的实现(1)所谓输入输出是以计算机为主体而言的。从计算机向外部输出设备输出数据称为“输出”,从输入设备输入称为“输入”。(2)C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。在C标

5、准函数库中提供了一些输入输出函数,例如:printf函数和scanf函数。(3)在使用C语言库函数时,要用预编译命令“#include”将有关的“头文件”包括到用户源文件中。在头文件中包含了与用到的函数有关的信息。例如使用标准输入输出库函数时,要用到“stdio.h”文件。4.4 字符数据的输入与输出字符数据的输入与输出 一般:一般:C语言提供了一些标准的输入语言提供了一些标准的输入/出函数出函数系统函数。系统函数。4.4.1 putchar函数函数(字符输出函数字符输出函数)putchar函数的作用是向终端输出一个字符。形式:putchar(c);功能:向终端(一般为显示器)输出一个字符,其

6、中c为 字符型或整型变量注意:用该函数时,须用预编译命令:#include “stdio.h”或#include main()int i=97;char ch=a;putchar(i);*输出字符a*putchar(n);*换行,可以输出控制字符起控制作用*putchar(ch);*输出字符变量ch的值a*程序运行结果为:aa再举例:#include stdio.h main()char a,b,c;a=B;b=O;c=Y;putchar(a);putchar(b);putchar(c);结果:BOY putchar(a);putchar(n);putchar(b);putchar(n);pu

7、tchar(c);putchar(n);*利用putchar还可输出其它转义字符结果:B O Y*若将最后一行改为:putchar(101);输出Aputchar();输出putchar(015);输出4.4.2 getchar函数函数(字符输入函数字符输入函数)此函数的作用是从输入设备(一般为键盘)上输入一个字符。getchar函数没有参数,其一般形式为 getchar()该函数的值就是从输入设备得到的字符。例如:#include main()int ch;chgetchar();*从键盘输入一个字符赋给ch*putchar(ch);*输出ch对应的字符*运行该程序时,输入如下:a则变量ch

8、的值为a。程序执行后输出的结果为:a注意:(1)执行getchar()输入字符时,键入字符后需要敲回车键,回车后,程序才会响应输入,继续执行后续语句。(2)getchar()函数只接收一个字符。getchar()函数得到的字符可以赋给一个字符变量或整型变量,也可以不赋给任何变量,作为表达式的一部分。例:putchar(getchar();(3)如果在一个函数中要调用getchar()函数,应该在该函数的前面(或本文件开头)加上“包含命令”#include或“stdio.h”4.5 格式输入与输出格式输入与输出 4.5.1 printf函数(格式输出函数)函数(格式输出函数)在前面各章节中已用到

9、printf函数,它的作用是向终端输出若干个任意类型的数据(putchar只能输出字符,而且只能是一个字符,而printf可以输出多个数据,且为任意类型)。1.printf函数的一般格式为 printf(格式控制,输出项列表格式控制,输出项列表);如:printf(“%d,%cn”,i,c);括弧内包括两部分:(1)“格式控制”是用双撇号括起来的字符串,也称“转换控制字符串”,它包括两种信息:普通字符:普通字符:即需要原样输出的字符。例如上面printf函数中双撇号内的逗号、空格和换行符。格式说明格式说明:由“%”和格式字符组成,如%d,%f等。它的作用是将输出的数据转换为指定的格式输出。格式

10、说明总是由“%”字符开始的。(2)“输出表列”是需要输出的一些数据,可以是表达式。例:printf(“%d%d”,a,b);格式说明 输出表列printf函数的一般形式可以表示为:printf(参数1,参数2,参数3参数n)其功能是将参数2参数n按参数1给定的格式输出。对不同类型的数据用不同的格式字符。常用的有以下几种格式字符:(1)d 格式符格式符。用来输出十进制整数。有以下几种用法:如直接用%d,则将出错。(1)%d:按数据的实际长度输出。(2)%md:m表示输出字段宽度。若实际位数m,则m自动取n值,即保证n个字符正常输出。(2)%ms,如果串长小于m,则在m列范围内,字符串向左靠,右补

11、空格。(7)f:按小数形式输出十进制实数,有以下几种形式。%m.nf,指定输出的数据共占m列,其中有n位小数。如果值长度小于m,则左端补空格。%mn.f,与%m.nf基本相同,只是使输出的数值向左端靠,右端补空格。%f,不指定字段宽度,由系统自动指定,使整数部分全部如数输出,并输出6位小数。%f%m.nf%m.nf(8)%e:以指数形式按标准宽度输出十进制实数。标准输出宽度共占13位,分别为:尾数的整数部分为非零数字占l位,小数点l位,小数占6位,e占1位,指数正(负)号占l位,指数占3位。结果:1.23456共13列6例5例可有%m.ne和%m.ne的形式e+002例:printf(%e,1

12、23.456)(9)%g,g格式符,用来输出实数,它根据数值的大小,自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的零。在使用printf函数时,还有几点要说明:(1)除了E、X、G外,其他格式字符必须用小写字母。(2)可以在printf函数中的“格式控制”字符串内包含“转义字符”。(3)在上面介绍了d,o,x,u,c,s,f,e,g等字符,如用在“%”后面就作为格式符号。一个格式说明以“%”开头。(4)如果想输出字符“%”,则应该在“格式控制”字符串中用连续两个%表示,如:printf(“%f%”,1.0/3);输出:0.333333%4.5.2 scanf函数函数(格式

13、输入函数格式输入函数)1.格式输入函数的一般形式 scanf(格式控制格式控制,地址表列,地址表列);“格式控制”的含义同printf函数;“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。例:main()int a,b,c;scanf(%d%d%d,&a,&b,&c);prinft(%d,%d,%dn,a,b,c);运行,机器等待你输入:3 4 5 输出结果 3,4,5上面的&a、&b、&c中的“&”是“地址运算符”,&a指a在内存中的地址。上面scanf函数的作用是:按照a、b、c在内存的地址将a、b、c的值存进去。2.格式说明格式说明 和printf函数中的格式说

14、明相似,以%开始,以一个格式字符结束,中间可以插入附加的字符。对于scanf函数所用到的格式字符,在课本P80表4.4列出。下列对使用scanf函数的一些说明:(1)对unsigned型变量所需的数据,可以用%u,%d或%o,%x格式输入。(2)可以指定输入数据所占列数,系统自动按它截取所需数据。如:scanf(“%3d%3d”,&a,&b);输入为:123456 则:a=123b=456 此方法也可用于字符型:scanf(“%3c”,&c);如果输入为:abc,则c只能为a。(3)如果在%后有一个“*”附加说明符,表示跳过它指定的列数。如:scanf(“%2d%*3d%2d”,&a,&b);

15、如果输入信息:12 345 67则将12赋给a,67赋给b。(4)输入数据时不能规定精度。如:scanf(“%7.2f”,&a);是不合法的。3.使用使用scanf函数时应注意的问题函数时应注意的问题(1)scanf函数中的“格式控制”后面应当是变量地址,而不应是变量名。(2)如果在“格式控制”字符串中除了格式说明以外还有其他字符,则在输入数据时在对应位置应输入与这些相同的字符。如:scanf(“%d,%d”,&a,&b);则应该输入:3,4(3)在用“%c”格式输入字符时,空格字符和“转义字符”都作为有效字符输入。(4)在输入数据时,遇以下情况时该数据认为结束。1.遇空格,或按“回车”或“跳

16、格”(Tab)键。2.按指定的宽度结束,如“%3d”,只取3列。3.遇非法输入。从结构化程序设计角度出发,程序有三种结构:顺序结构选择结构循环结构4.6 顺序结构程序涉及举例顺序结构程序涉及举例这一章介绍顺序结构程序 在顺序结构程序中,一般包括以下几个部分:1.编译预处理命令2.函数:在函数体中,包含着顺序执行的各部分语句。主要有以下几个部分:(1)变量类型的说明部分;(2)提供数据部分;(3)运算部分;(4)输出部分。表示ABAB先执行A,再执行B.例3.1 输入圆的半径,输出圆的周长和面积。分析:(1)定义实型变量r、l、s用于存放半径、周长、面积;(2)调用输入函数,输入r;(3)分别利

17、用周长公式和面积公式求出l、s;(4)调用输出函数输出l、s。程序:#include void main()float r,l,s;scanf(%f,&r);/*输入一个浮点数据,存放地址&r*/l=2*3.14159*r;/*计算周长,赋值给1*/s=3.14159*r*r;/*计算面积,赋值给s*/printf(n l=%8.4f,1);/*输出周长,数据共占8个字符宽,4位小数*/printf(n s=%8.4f,s);/*输出面积,数据共占8个字符宽,4位小数*/例3.2 输入三角形的三边长,求三角形的面积。解:设三边为a,b,c,从数学公式可以知道三角形的面积的计算公式如下:其中:程

18、序如下:#include main()float a,b,c,s,area;scanf(“%f,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2fn”,a,b,c,s);printf(“area=%7.2fn”,area);例3.3 用格式输入函数输入三个字符,并用输出函数反向输出三个字符和它们的ASCII码。分析:处理流程同例3.2。程序:#include void main()char ch1,ch2,ch3;scanf(%c%c%c,&

19、ch1,&ch2,&ch3);/*输入三个字符*/printf(%c,%dn,ch3,ch3);/*输出字符和它的ASCII码*/printf(%c,%dn,ch2,ch2);printf(%c,%dn,ch1,ch1);例3.4 输入任意三个整数,求它们的和与平均值。分析:(1)输入三个整数存入变量num1,num2,num3;(2)求三个整数的平均值,赋给变量average;(3)输出average。程序:void main()int num1,num2,num3,sum;float average;printf(Please input three numbers:);scanf(%d,

20、%d,%d,&num1,&num2,&num3);/*输入三个用逗号分隔的整数*/sum=num1+num2+num3;/*求和*/average=(num1+num2+num3)/3.0/*求平均值*/printf(sum=%d,sum);/*输出和*/printf(average=%7.2fn,average);/*输出平均值*/例3.5 求方程ax2+bx+c=0的实数根。分析:(1)输入实型数a,b,c,要求满足a0且b2-4ac0;(2)求判别式;(3)调用求平方根函数sqrt(),求方程的根;(4)输出。程序:#includemath.h/*为了使用求平方根函数sqrt()*/vo

21、id main()float a,b,c,disc,x1,x2;printf(input a,b,c:);scanf(%f,%f,%f,&a,&b,&c);/*输入方程的三个系数的值*/disc=b*b-4*a*c;/*求判别式的值赋给disc*/x1=(-b+sqrt(disc)/(2*a);/*求方程的根*/x2=(-b-sqrt(disc)/(2*a);printf(nx1=%6.2fn,x2=%6.2fn,x1,x2);例3.6 从键盘输入一个小写字母,用大写形式输出该字母。分析:(1)输入小写字母存入变量a;(2)转换成大写a=a-32;(3)输出a。程序:#include stdio.h void main()char a;printf(input a lowercase letter:);a=getchar();a=a-32;/*将大写字母转换成对应的小写字母*/printf(%cn,a);

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁