四章顺序结构程序设计

上传人:夏** 文档编号:570211302 上传时间:2024-08-02 格式:PPT 页数:25 大小:152.50KB
返回 下载 相关 举报
四章顺序结构程序设计_第1页
第1页 / 共25页
四章顺序结构程序设计_第2页
第2页 / 共25页
四章顺序结构程序设计_第3页
第3页 / 共25页
四章顺序结构程序设计_第4页
第4页 / 共25页
四章顺序结构程序设计_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《四章顺序结构程序设计》由会员分享,可在线阅读,更多相关《四章顺序结构程序设计(25页珍藏版)》请在金锄头文库上搜索。

1、四章顺序结构程序设计Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望一、C语言中的三大流程控制结构1、顺序结构2、选择结构3、循环结构从上往下顺次执行的结构称为顺序结构。如:P1_2。二、基本的二、基本的C语句语句在C语言中,大多数的操作运算都是通过表达式来实现的。表达式后加一个分号组成表达式语句。C语句有下面的几种类型控制语句函数调用语句表达式语句空语句复合语句等例如:y=sin(x); i+; printf(“Hello world!”);等都是表达式语句。空语句是只有一个分号组

2、成,它没有任何意义,但是合法的C语句。二、基本的二、基本的C语句语句在C语言中,允许把一组C语句放在一对花括号内,作为一个C语句来使用,我们称这一组C语句为复合语句。例如:c=getchar(); putchar(c); 应当注意,在复合语句的后面,不用再写分号。三、数据的输入、输出三、数据的输入、输出一个程序,必须要有输出,通过输出的结果,我们才可以验证该程序是否能够正确地解决相应的问题。在C语言中,数据的输入、输出都是由函数来实现的。C语言提供了多种输入、输出函数,他们功能强大,使用灵活。关于这些函数的原型信息(说明信息)都放在头文件stdio.h中。常用的输出函数有:printf、put

3、s、putchar等。常用的输入函数有:scanf、getchar、gets。(一)(一)printf函数的使用:函数的使用:1、使用格式:printf(格式控制参数,输出项1,输出项2,);格式控制参数以字符串的形式描述,所以也称“格式控制字符串”。它由两部分组成:格式说明和普通字符。普通字符将被简单得复制显示;一个格式说明项将引起一个输出参数项的转换与显示。格式说明项是由“%”和一个类型描述符组成的字符串。其常用格式如:sum=5;printf (“nThe result is:%d。”, sum);它的输出将是:The result is:5。需要注意的是格式说明项的个数与类型要与输出项

4、一一对应。(一)(一)printf函数的使用:函数的使用:2、格式字符有:格式字格式字符符输出形式输出形式举例举例输出结果输出结果d或或i十进制整数十进制整数int a=123; printf(“%d”,a);123x(或(或X)十六进制整数十六进制整数int a=123; printf(“%x”,a);7Bo八进制整数八进制整数int a=123; printf(“%o”,a);173u无符号的十进制整数无符号的十进制整数int a=123; printf(“%u”,a);123c一个字符一个字符char a=E; printf(“%c”,a);Es字符串字符串Char a=”china”;

5、 printf(“%s”,a);chinae或或(E)指数形式的实数数指数形式的实数数float a=123.456; printf(“%d”,a);1.234560e+002f小数形式的实数数小数形式的实数数float a=123.456; printf(“%d”,a);123.456000g(或(或G)e和和f中较短的一种,即忽略无效中较短的一种,即忽略无效0float a=123.456; printf(“%d”,a);123.456%本身本身 printf(“%”);%(一)(一)printf函数的使用:函数的使用:1、输出转换在输出语句中,也会发生隐式转换。如:float f=5.8

6、; printf(“%d”, f ); 则输出5。如果是int a=5.8; printf(“%f”, a); 在编译时不用出错,但不会输出结果。再如:int i = - - 1; printf(“%u”, i ); 则会输出()。1的原码:000000000000001,补码为:111 1111 1111 1111 存储形式为16个1。故当作为无符号数输出时,应输出65535(216-1)。(一)(一)printf函数的使用:函数的使用:例1:编写一个程序,输出下面的内容:Hello world!例2:编写一个程序,输出ASCII码为38的字符。例3:编写一个程序,计算264322的结果。例

7、4:编写一个程序,计算半径为5cm的圆的面积。例5:编写一个程序,计算华氏100度是摄氏多少度。C=5(f-32)/9;见程序P4_1P4_5(一)(一)printf函数的使用:函数的使用:另外,在%和格式字符之间可有一些可选的附加说明项,其完整格式为: % 0 mn l/h 格式字符3、长度修正符(l/h)l:对整型指long型,对实型指double型。如:%ld、%lx、%lo、%lu、%lf等h:只用于将整型的格式修正为short型。如:%hd、%hx、%ho、%hu等。是否左对齐指定空位是否填0指定输出域宽及精度输出长度修正指定输出类型格式说明的起始符可选项(一)(一)printf函数

8、的使用:函数的使用:4、域宽及精度描述符(mn):m:指域宽。即对应的输出项共占多少位的位置;n:指精度。即小数占多少位。不指定n时,默认的精度是n=6。需要特别指出的是:数据的实际精度并不取决于格式项中的域宽与精度,也不决定于输入的数据精度,而主要取决于数据在机器内的存储精度。上机并思考:1、域宽小于实际宽度时如何处理?2、缺省的精度是多少?3、精度说明大于、小于实际精度时,如何处理?4、float 与double 输出的最大精度是多少?5、符号位如何处理?6、多余的小数是被截断还是舍入?(一)(一)printf函数的使用:函数的使用:5、数字前的空位是否用0填补:(用数0表示)如:floa

9、t a=1.23; printf(“%08.1f”,a); 输出结果为:000001. .26、负号用以指定输出项是否左对齐输出:如:int a=3;printf (“|%5d,%-5d. .”,a,a);(一)(一)printf函数的使用:函数的使用:课本P84练习4.4(二)(二)scanf函数的使用函数的使用我们在编写程序时,常需要处理用户随机输入的数据。如上面例4。要编写计算任意一个圆的面积的程序。在运行时,用户随机输入圆的半径,就可运行求得对应的面积。此时,就要需要程序能够从终端读入一个数据,就要用到scanf函数。(二)(二)scanf函数的使用函数的使用1、scanf函数的使用格

10、式:scanf(格式控制参数,地址1,地址2,);格式控制参数包括普通字符和格式说明项两部分。普通字符在输入数据时要原样输入,格式说明项说明读入的数据要存为什么格式。例如:int a; scanf(“%d”,&a);&:称为地址运算符,用于求一个变量的地址。改写例1例5,增加程序的通用性。例6:编写求圆的面积的程序,圆的半径从键盘输入。例7:编写求圆柱的表面积的程序,圆柱的底面半径和高由键盘随便输入。(见程序P4_6P4_7)(二)(二)scanf函数的使用函数的使用2、格式控制参数:除了基本的格式字符外,格式参数还可以包含下面几项:% * m l/h 格式字符赋值抑制符长度修正说明符指定输入

11、类型格式说明的起始符可选项域宽说明符(二)(二)scanf函数的使用函数的使用 3、 输入流数据分隔scanf函数从输入数据流中接受非空的字符,再转换成格式项要求的格式,传送到与格式项对应的地址中去。那么,当操作人员在终端上键入一串字符时,系统怎么知道哪几个字符算作一个数据项呢?有以下几种方法:根据格式字符的含义从输入流中取得数据,当输入流中的数据类型与格式字符要求不符时,就认为这一数据项结束。如上例7:根据域宽分离出数据项:例8:main()int a,b; scanf(“%2d %3d”,&a,&b); printf(“a=%d,b=%d.”,a,b);若输入123456, 则a=12,b

12、=345.(二)(二)scanf函数的使用函数的使用用分隔符分隔例9:main()int a,b; scanf(“%d %d”,&a,&b); printf(“a=%d,a=%d”, a,b);例10:main()int a,b; scanf(“%d,%d”,&a,&b); printf(“a=%d,a=%d”, a,b);例11:main()int a,b; scanf(“a=%d,b=%d”,&a,&b); printf(“a=%d,a=%d”, a,b);注意:如果需要连续输入两个字符数据,这两个字符中间要慎用空格、回车符等分隔。(二)(二)scanf函数的使用函数的使用4、抑制字符*它

13、的作用是按格式说明读入数据后,不送给任何变量。例12: main() int a,b,c; scanf(“%2d%*3d%d”,&a,&b); printf(“na=%d,b=%d.”,a,b);当输入1234567时,a=12, b=67, 读出345没有赋给任何变量。(三)、其他输入输出函数(三)、其他输入输出函数1、getchar:从输入设备读入一个字符。2、putchar:在输出设备输出一个字符。用法:getchar();putchar(ch);(三)、其他输入输出函数(三)、其他输入输出函数例13:main()charc;c=getchar();putchar(c);练习:练习:1、

14、在scanf函数的格式控制中,格式说明的类型与输入项的类型应该一一对应匹配,如果类型不匹配,系统将()A)不予接受 B)并不给出出错信息,但得不到正确的数据C)能接收到正确的数据D)给出出错信息,不予接收数据2、下面程序的输出结果是()main() int a=4; float b=9.5; printf ( “ na=%d ,b=%4.2f ”,a ,b ); A)4,9.5 B)na=%d, b=%f C)a=4,b=9.50 D)a=4,b=9.5练习:练习:3、下面程序的输出结果是()main() int c1=b, c2=e, c3=e; printf(“%d,%c”,c2-c1,

15、c3-32);A)2,M B)3,E C)2,E D)不能确定【 注 】 英 文 字 母 的 ASCII码 是 连 续 的 , 且 大 写 与 小 写 相 差32(a-A=32)。即一个大写字母+32即可转换成对应的小写字母;一个小写字母-32即可转换成对应的大写字母。故应该选择B。 同样,数字的ASCII码也是连续的,即8 - 3 =5。4、设有定义:long x=123456L;则能正确输出x的值的语句是()A)printf (“x=%dn”,x); B)printf(“x=%ldn”,x); C)printf (“x=%8dn”,x); D)printf(“x=%Ldn”,x);练习:练

16、习:5、 若变量已正确说明为float类型,要通过下列语句分别给变量a, b, c赋值为10.0,22.0,33.0,则不正确的输入形式是()scanf(“%f%f%f”,&a,&b,&c);A A)10 B)10.0,22.0,33.0回车 C)10.0回车 22回车 22.0 33.0回车 33回车 D)10 22 33回车6、以下对scanf函数的使用,叙述正确的是()A)输入项可以是一个实型常量,如scanf(“%f”,3.5); B)只有格式控制,没有输入项,也能正确输入数据到内存,如scanf(“a=%d,b=%d”); C)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,如:scanf(“%4.2f”,&f); D) 当 输 入 数 据 时 , 必 须 指 明 变 量 地 址 , 例 如 :scanf(“%f”,&f);练习:练习:7、若有以下定义,写出以下程序段的输出结果()int i=-200,j=2500;printf(“(1)%d %d” , i , j ); printf(“(2)i=%d, j=%dn” , i , j ); printf(“(3)i=%dnj=%d” , i , j );8、以下程序段的输出结果是()double a=513.789215; printf(“a=%8.6f,a=%8.2f,a=%14.8f”,a,a,a);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号