c语言课件第4章顺序程序设计课件

上传人:痛*** 文档编号:175661655 上传时间:2022-12-20 格式:PPT 页数:48 大小:209KB
收藏 版权申诉 举报 下载
c语言课件第4章顺序程序设计课件_第1页
第1页 / 共48页
c语言课件第4章顺序程序设计课件_第2页
第2页 / 共48页
c语言课件第4章顺序程序设计课件_第3页
第3页 / 共48页
资源描述:

《c语言课件第4章顺序程序设计课件》由会员分享,可在线阅读,更多相关《c语言课件第4章顺序程序设计课件(48页珍藏版)》请在装配图网上搜索。

1、c语言课件第4章顺序程序设计第四章第四章 最简单的最简单的C程序设计程序设计The Simplest C Program Design顺序程序设计顺序程序设计The Sequence Program Designc语言课件第4章顺序程序设计上机安排0103班,4-13周周五,下午24点0451班,4-13周周一,下午46点地点:F座214,217,218,220c语言课件第4章顺序程序设计4.1 C语句概述语句概述(Description of C sentence)一、一、C程序结构程序结构C程序程序源程序文件源程序文件1源程序文件源程序文件2源程序文件源程序文件n 预处理命令预处理命令全局

2、变量声明全局变量声明函数函数1函数函数n 函数首部函数首部函数体函数体局部变量声明局部变量声明执行语句执行语句c语言课件第4章顺序程序设计二、二、C语句概述语句概述C语句分类语句分类:(Assortment)1.控制语句控制语句(Control sentences)2.函数调用语句函数调用语句(function Call sentences)3.表达式语句表达式语句(Expression sentences)4.空语句空语句(Empty sentences)5.复合语句复合语句(Compound sentences)一条完整的C语句必须以“;”结束。“;”是一个语句不可缺少的一部分。c语言课件

3、第4章顺序程序设计控制语句控制语句(Control sentences)功能:功能:完成一定的控制功能完成一定的控制功能C 有9种控制语句:条件语句(Condition sentence)if(表达式)if(表达式)语句1语句块1else 语句2 else 语句块2 循环语句(Loop sentence)for()for()语句语句块 c语言课件第4章顺序程序设计 当型循环语句(while Loop)while(表达式)while(表达式)语句语句块 直到型循环语句(until Loop)do do 语句 while(表达式);语句块while(表达式);continue (结束本次循环语句)

4、switch (多分支选择语句)break(中止执行switch或循环语句)goto (转向语句)return (从函数返回数值语句)c语言课件第4章顺序程序设计2.函数调用语句函数调用语句(Calling function)由一次函数调用加一个“;”构成。如:printf(“Hello World!”);函数调用分号3.表达式语句表达式语句(Expression sentences)由表达式加上“;”构成。如:x+4*y;算术表达式语句 4*7,4+8;逗号表达式语句 x=4*7;赋值表达式语句(赋值语句)c语言课件第4章顺序程序设计4.空语句空语句(Empty sentences)由一个“

5、;”构成。即:;作用:程序转向点;什么也不做的循环体。while(ix2)y=x1*x1+x2;printf(y=%d,y);不能省略不能加“;”c语言课件第4章顺序程序设计4.2 赋值语句赋值语句(Assignment Sentences)C语言中的赋值号“=”是一个运算符。赋值表达式和赋值语句不同,赋值表达式可以被包含在其它表达式之中。如:if(a=b)0)t=a;它等于:a=b;if(a0)t=a;如果写成:if(a=b;)0)t=a;错了。在if的条件中不能包含赋值语句c语言课件第4章顺序程序设计4.3 数据输入输出的概念及在语言中的数据输入输出的概念及在语言中的实现实现(Data I

6、nputs and Outputs)一一、数据输入输出的概念数据输入输出的概念计算机的输入输出是以计算机主机为主体而言。输入:从外部通过输入设备(如,键盘、磁盘 、光盘、扫描仪等)向计算机输入数据。输出:从计算机向外部设备(如,显示屏、打 印机、磁盘等)输出数据。c语言课件第4章顺序程序设计二、二、数据输入输出在语言中的实现数据输入输出在语言中的实现调用调用输入输出函数输入输出函数实现输入输出操作实现输入输出操作 语言本身不提供输入输出语句,输入和输出操作是通过调用语言库函数中输入输出函数来实现的。如:putchar函数输出字符(Character Input)getchar函数输入字符(Ch

7、aracter Output)printf函数 格式输出(Data Input with format)scanf函数 格式输入(Data Output with format)puts 函数 输出字符串(Strings output)gets 函数 输入字符串(Strings input)c语言课件第4章顺序程序设计1)C语言库函数(stdio.h,math.h等)已被编译成目标文件(二进制形式)2)源程序必须先编译编译成目标文件。源程序中的输入输出函数等库函数,在编译时并不被翻译成目标指令。3)生成好的目标文件(.OBJ)必须与与系统的函数库(以及其他的目标文件)进行连接连接,形成可执行文

8、件(EXE)。4)运行运行EXE文件时,调用已被连接的函数库中的系统函数。c语言课件第4章顺序程序设计main()int a,b;a=10;b=20;printf(“a=%d,b=%d”,a,b);printf()的目标代码系统函数库系统函数库.c语言课件第4章顺序程序设计2文件开头应有文件开头应有“#include”命令命令 在调用标准输入输出库函数时,文件开头应有预编译命令:#include 或#include “stdio.h”其中,stdio.h是“头文件”,包含了与用到的标准输入输出函数有关的信息。stdio.h 是standard input&outpt 系统允许在使用 print

9、f 和 scanf 两个函数时可不加“#include”命令。c语言课件第4章顺序程序设计4.4 字符数据的输入与输出字符数据的输入与输出(The Input and Ouput of Character Data)一、一、putchar 函数(字符输出函数)函数(字符输出函数)一般格式:putchar(c)必须有预编译命令#include 功能 向终端设备输出一个字符一个字符。说明:其中c可以是字符型常量、字符型变量、整型常量、整型变量表达式。c语言课件第4章顺序程序设计例:例:#include main()char a,b,c;a=B;b=O;c=Y;putchar(a);putchar(

10、b);putchar(c);putchar();输出结果输出结果:BOYc语言课件第4章顺序程序设计一般格式:getchar()没有参数没有参数功能 从终端输入一个字符。#include“stdio.h”main()char c;c=getchar();putchar(c);aa例:二、二、getchar函数函数(字符输入函数字符输入函数)c语言课件第4章顺序程序设计4.5 格式输入输出函数格式输入输出函数(Input and Output Function with Format)格式字符说 明d,i用来输入输出有符号的十进制整数u用来输入输出无符号的十进制整数o用来输入输出无符号的八进制整

11、数x,X用来输入输出无符号的十六进制整数c用来输入输出单个字符s用来输入输出字符串f用来输入输出实数(小数或指数)e,E,g,G与f作用相同,e与f,g可以互相替换c语言课件第4章顺序程序设计4.5.1 printf 函数(格式输出函数)函数(格式输出函数)功能:向终端输出若干个任意类型的数据。功能:向终端输出若干个任意类型的数据。(一一)printf函数的一般格式函数的一般格式printf(格式控制,输出表列)(格式控制,输出表列)c语言课件第4章顺序程序设计举例:举例:main()int a=3,b=4;printf(“a=%d b=%d sum=%dn”,a,b,a+b);输出结果输出结

12、果:a=3 b=4 sum=7格式说明格式说明(格式字符格式字符)普通字符普通字符输出表列输出表列转义字符转义字符c语言课件第4章顺序程序设计printf(格式控制,输出表列)说明:说明:“输出表列输出表列”是需要输出的一些数据是需要输出的一些数据(变量、表达变量、表达式式)。“格式控制格式控制”是用双引号括起来的字符是用双引号括起来的字符 也称也称“转换控制字符串转换控制字符串”,它包括三种信息:,它包括三种信息:1.普通字符,即需要原样输出的字符。普通字符,即需要原样输出的字符。2.格式说明,由格式说明,由“%”和格式字符组成和格式字符组成,如如%d,%f等。等。3.转义字符,将转义字符,

13、将后面的字符转换成另外的意义后面的字符转换成另外的意义(P48表)。表)。c语言课件第4章顺序程序设计(二二)格式字符格式字符(formatted Character)对不同类型的数据用不同的格式字符。对不同类型的数据用不同的格式字符。1.d格式符格式符 用来输出十进制整数。用来输出十进制整数。(output the decimal integer)(1)%d:按整型数据的实际长度输出。:按整型数据的实际长度输出。如:如:int a=123;printf(“%d”,a);结果:结果:123c语言课件第4章顺序程序设计(2)%md:m为指定的输出字段的宽度。为指定的输出字段的宽度。若数据位数小于

14、若数据位数小于m,则,则左端左端补以空格补以空格;若大于若大于m,则按实际位数输出。,则按实际位数输出。如:如:int a=123,b=12345;printf(“%4d,%4d”,a,b);结果:结果:123,12345 c语言课件第4章顺序程序设计(3)%mld:输出长整型数据。:输出长整型数据。m是对长整型数据指定字段宽度。是对长整型数据指定字段宽度。如:如:long a=1234567;printf(“%ld,%8ld,%5ld”,a,a,a);结果:结果:1234567,1234567,1234567 c语言课件第4章顺序程序设计 f格式符格式符以浮点数形式输出实数。以浮点数形式输出

15、实数。(output the floating point real number)(1)%f:不指定字段宽度:不指定字段宽度,由系统自动指定,由系统自动指定,使整数部分全部如数输出,并输出使整数部分全部如数输出,并输出6位小数位小数。注意注意float型和型和double型数据的有效位数,型数据的有效位数,如:float x=123456.123;printf(“%f”,x);输出结果:123456.125000c语言课件第4章顺序程序设计main()double x,y;x=1111111111111.111111111;y=1111111111111.111111111;printf(“

16、%f”,x+y);2222222222222.222170c语言课件第4章顺序程序设计(2)%m.nf:指定输出的数据共占:指定输出的数据共占m列列,其中有其中有n 位小数。若数据长度小于位小数。若数据长度小于m,则左端补空格。,则左端补空格。(3)%m.nf:与与%m.nf 基本相同,只是使输出基本相同,只是使输出 的数值向左端靠,右端补空格。的数值向左端靠,右端补空格。如:float f=123.456;printf(“%10.2f,%-10.2f”,f);输出结果:123.46,123.46c语言课件第4章顺序程序设计 e格式格式以指数形式输出实数。以指数形式输出实数。(output t

17、he real number in exponent)(1)%e如:printf(“%e”,123.456);输出结果:1.234560e+002 6位3位一般共占一般共占13列宽度列宽度(2)%m.ne和和%m.ne:m、n和和“”字符含义与字符含义与 前相同。此处前相同。此处n指数据的数字部分指数据的数字部分(又称尾数又称尾数)的小数位数。的小数位数。c语言课件第4章顺序程序设计 4.g格式符格式符用来输出实数用来输出实数,它根据数值的大它根据数值的大 小小,自动选自动选f格式或格式或e格式格式(选择输出时占宽度较选择输出时占宽度较 小的一种小的一种),且不输出无意义的零。,且不输出无意义

18、的零。(output the real number in float point or exponent)如:f=123.468;printf(“%f,%e,%g”,f,f,f);输出如下输出如下:123.468000,1.234680e+002 ,123.46810列13列如:f=123.468;printf(“%f,%e,%g”,f,f,f);输出如下输出如下:123.468000,1.234680e+002 ,123.46810列c语言课件第4章顺序程序设计5.o格式符格式符以以8进制数形式输出整数进制数形式输出整数.输出的数值不带符号输出的数值不带符号,即将符号也一起作为八即将符号也

19、一起作为八进制数的一部分输出。进制数的一部分输出。如:如:int a=-1;printf(“%d,%o”,a,a);结果:结果:-1,177777 o格式符同d格式符一样,可以输出长整型数据,也可以指定字段宽度。1 111 111 111 111 111c语言课件第4章顺序程序设计6.x格式符格式符以以16进制数形式输出整数。进制数形式输出整数。同样不会出现负的十六进制数。同样不会出现负的十六进制数。7.u格式符格式符以十进制形式输出以十进制形式输出unsigned型数据型数据如:如:main()unsigned int a=65535;int b=-2;printf(“a=%d,%o,%x,

20、%un”,a,a,a,a);printf(“b=%d,%o,%x,%un”,b,b,b,b);输出结果:输出结果:a=-1,177777,ffff,65535 b=-2,177776,fffe,65534c语言课件第4章顺序程序设计8.C格式符格式符用来输出一个字符。用来输出一个字符。一个整数一个整数,只要它的值在只要它的值在0255范围内,也范围内,也可以用字符形式输出,在输出前可以用字符形式输出,在输出前,将该整数转换将该整数转换成相应的成相应的ASCII字符;反之,一个字符数据也字符;反之,一个字符数据也可以用整数形式输出。可以用整数形式输出。如:如:main()char c=a;int

21、 i=97;printf(“%c,%dn”,c,c);printf(“%c,%dn”,i,i);输出结果:输出结果:a,97 a,97c语言课件第4章顺序程序设计9.s格式符格式符用来输出一个字符串。用来输出一个字符串。(1)%s:按原长度输出字符串。:按原长度输出字符串。如:如:printf(“%s”,“CHINA”)输出结果:输出结果:CHINA(2)%ms:输出的字符串占:输出的字符串占m列,如字符串本列,如字符串本 身长度大于身长度大于m,则突破,则突破m的限制,将字符串的限制,将字符串 全部输出,若串长小于全部输出,若串长小于m,则,则左补空格左补空格。(3)%ms:如果串长小于:如

22、果串长小于m,则在,则在m列范围内列范围内 ,字符串向左靠,字符串向左靠,右补空格右补空格。c语言课件第4章顺序程序设计(4)%m.ns:输出占:输出占m列,但只取字符串中左端列,但只取字符串中左端 n个字符。输出在列的右侧,个字符。输出在列的右侧,左补空格左补空格。如。如 果果nm,则自动取则自动取n值,即保证值,即保证n个字符正常输个字符正常输 出。出。(5)%m.ns,其中其中m、n含义同上,含义同上,n个字符输出个字符输出 在在m列范围的左侧,列范围的左侧,右补空格右补空格。如:printf(“%3s,%7.2s,%.4s,%-5.3sn”,“CHINA”,“CHINA”,“CHINA

23、”,“CHINA”);输出结果:CHINA,CH,CHIN,CHI c语言课件第4章顺序程序设计4.5.2 scanf 函数(格式输入函数)函数(格式输入函数)(一)一般形式(一)一般形式scanf(格式控制,地址表列)(格式控制,地址表列)1015main()int a,b,c;scanf(“%d,%d”,&a,&b);printf(“a=%d,b=%d”,a,b);输入:输入:10,15输出:输出:a=10,b=15abc语言课件第4章顺序程序设计(二)格式说明(二)格式说明与prntf函数中的格式说明相似,以%开始,以一个格式字符结束(表4-3),中间可以插入附加的字符(表4-4)。c语

24、言课件第4章顺序程序设计如:如:int a,b,c;scanf(“%d%d%d”,&a,&b,&c);输入形式:输入形式:10 17 181 int a,b,c;scanf(“%d,%d,%dn”,&a,&b,&c);输入形式:输入形式:10,11,12 scanf(“%3d%3d%c”,&a,&b,&ch);输入形式:输入形式:123456abc 结果:结果:a=123 b=456 ch=ascanf(“%d%d%c”,&a,&b,&ch);输入形式:输入形式:123 456abc 结果:结果:a=123 b=456 ch=ac语言课件第4章顺序程序设计main()char c1,c2;sc

25、anf(“c1=%c,c2=%c”,&c1,&c2);printf(“%c%c”,c1,c2);输入数据:c1=a,c2=b 输出数据:abc语言课件第4章顺序程序设计有错吗?main()int x,y,z;char ch;scanf(“%7.2d%d%d%c”,x,y,z,ch);main()int x,y;scanf(“%5d,%3d”,&x,&y);输入数据:345,567 c语言课件第4章顺序程序设计说明说明:1.%后的后的“*”附加说明符,用来表示跳过它相应的数据。附加说明符,用来表示跳过它相应的数据。如:如:scanf(“%2d,%*3d,%2d”,&a,&b);输入:输入:12,

26、456,67 结果:结果:a=12 b=67 2.输入数据时不能规定精度。输入数据时不能规定精度。scanf(“%7.2f”,&a);3.输入的字符、数值要与格式一致输入的字符、数值要与格式一致scanf(“a=%d,b=%d”,&a,&b);输入:输入:a=12,b=134、scanf(“%c%c%c”,&a,&b,&c);输入:输入:a b c 空格和转义字符都作为有效字符输入空格和转义字符都作为有效字符输入c语言课件第4章顺序程序设计main()int a,b;float x,y;char c1,c2;scanf(“a=%d b=%d”,&a,&b);scanf(“%f%e”,&x,&y

27、);scanf(“%c%c”,&c1,&c2);printf(“%d,%d,%f,%f,%c,%c”,a,b,x,y,c1,c2);输入数据:a=10 b=20 30 40 a b输出数据:10,20,30.00000,40.00000,a,b输入方式2:a=10 b=20 30 40 a b c语言课件第4章顺序程序设计main()int a,b;float x,y;char c1,c2;scanf(“a=%d b=%d”,&a,&b);scanf(“x=%f y=%e”,&x,&y);scanf(“c1=%c c2=%c”,&c1,&c2);printf(“%d,%d,%f,%f,%c,%

28、c”,a,b,x,y,c1,c2);输入数据:a=10 b=20 x=10 y=10c1=a c2=b输出数据:10,20,10.00000,20.00000,a,bc语言课件第4章顺序程序设计4.6 顺序结构程序设计举例顺序结构程序设计举例 (顺序结构)(选择结构)(循环结构)特点特点:程序按语句从上到下的排列顺序依次执程序按语句从上到下的排列顺序依次执 行,每条语句必须执行且只能执行一行,每条语句必须执行且只能执行一 次,没有执行不到或执行多次的语句。次,没有执行不到或执行多次的语句。c语言课件第4章顺序程序设计例如:例如:已知圆柱体半径已知圆柱体半径6 6米,高米,高7 7米,求体积。米

29、,求体积。#define PI 3.14159main()float r,h,s,v;r=6;h=7;s=PI*r*r;v=s*h;printf(“V=%fn”,v);c语言课件第4章顺序程序设计例4.10 输入三角形的三条边,求三角形的面积。输入三角形的三条边,求三角形的面积。分析:已知三角形的三条边 a,b,c。求解三角形的面积area。计算公式设 s=(a+b+c)/2 area=)(*)(*)(*csbsass开始开始给给a,b,ca,b,c赋值赋值计算计算s=(a+b+c)/2s=(a+b+c)/2计算计算area=area=)(*)(*)(*csbsass结果输出结果输出结束结束#

30、include main()float a,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“a=%f b=%f c=%f s=%f”,a,b,c,s);printf(“area=%f”,area);c语言课件第4章顺序程序设计例例4.11 从键盘输入一个大写字母,要求改用小写从键盘输入一个大写字母,要求改用小写 字母输出。字母输出。分析:已知字符变量c1为大写字母。求解将字符变量c2中放入相应的小写字母。计算公式c2=c1+32 (小写改成大写字母?)开始开始计算计算

31、c2=c1+32c2=c1+32输出输出c1结束结束输入一大写字母输入一大写字母放入放入c1中中输出输出c2#include main()char c1,c2;c1=getchar();/*键盘输入一个大写字母*/printf(“%c,%dn”,c1,c1);c2=c1+32;printf(“%c,%dn”,c2,c2);输入输入:A 输出输出:A,65 a,97 c语言课件第4章顺序程序设计例例4.12 求求ax2+bx+c=0的根,的根,a,b,c由键盘输入,由键盘输入,设设 b2-4ac0#include main()float a,b,c,disc,x1,x2,p,q;scanf(%f

32、%f%f,&a,&b,&c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%fnx2=%f,x1,x2);运行情况:1 3 2x1=-1.000000 x2=-2.000000c语言课件第4章顺序程序设计本章作业:一、一、做做4.2、4.5、4.6、4.7,自己对答案,自己对答案二、二、编程上机操作题编程上机操作题,熟悉各种类型的输入输熟悉各种类型的输入输出的方法,能正确使用各种格式转换符。出的方法,能正确使用各种格式转换符。1.4.4题、题、4.8 题、题、4.9题。题。2.上机调试上机调试4.10题并回答问题。题并回答问题。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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