《简单的程序设计》ppt课件

上传人:san****019 文档编号:83686665 上传时间:2019-02-28 格式:PPT 页数:68 大小:607.50KB
返回 下载 相关 举报
《简单的程序设计》ppt课件_第1页
第1页 / 共68页
《简单的程序设计》ppt课件_第2页
第2页 / 共68页
《简单的程序设计》ppt课件_第3页
第3页 / 共68页
《简单的程序设计》ppt课件_第4页
第4页 / 共68页
《简单的程序设计》ppt课件_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《《简单的程序设计》ppt课件》由会员分享,可在线阅读,更多相关《《简单的程序设计》ppt课件(68页珍藏版)》请在金锄头文库上搜索。

1、第三章 最简单的C程序设计,31 C语句概述 和其它高级语言一样,C语言的语句用来向计算机系统发出操作指令。一个语句经编译后产生若干条件机器指令。在C语言中只有“可执行语句”,没有“非执行语句”。程序对数据的处理是通过“语句”的执行来实现的。一条语句完成一项操作(或功能)。一个为实现特定目的的程序应包含若干条语句。,C程序的结构,C 语句分类,表达式语句(表达式;) 简单语句 函数调用语句(函数名(参数表); 空语句(;) C语言 数据 操作 复合语句( 一条或多条语句 ) 语句 条件语句 if,switch语 . 结构化语句 while 循环语句 do_while for语句 流程控制语句

2、break 限定转向语句 continue 非结构化语句 return 非限定转向语句 goto,1.表达式语句 由表达式组成的语句称为表达式语句 语句格式:表达式; 功能:计算表达式或改变变量的值。 分类: 运算符表达式语句 赋值语句,分号(;)是语句结束的标志,1)运算符表达式语句 运算符表达式后跟一个分号组成。 例: 5; a+b;/*算术表达式语句*/ a=3,b=a+2,c=a+1; 2)赋值语句 赋值表达式后跟一个分号组成 例: x=2;y=3;,2.函数调用语句 由函数调用表达式后跟一个分号组成 格式: 函数名(参数列表); 分类: 标准库函数 用户自定义函数 printf(“h

3、ello world”); C=max(a,b);,复合语句 一对大括号包围若干条语句组成 格式: 数据说明部分; 执行语句部分; main() int a=11,b=21,c=31; printf(“a=%d b=%d c=%dn“,a,b,c); int b=22;float c=3.3; printf(“a=%d b=%d c=%fn“,a,b,c); a=b; printf(“a=%d b=%d c=%dn“,a,b,c);, 空语句,空语句就是一个分号。,格式:,;,功能:,执行该语句不做任何操作.通常在程序中的适当地方加上几个空语句,以起到分隔或突出的作用。 注意:C语言允许一行写

4、几个语句,也允许一个语句拆开写在几行上,书写格式无固定要求,32程序的三种基本结构,近年来广泛采用结构化程序设计方法,使程序结构清晰、易读性强,以提高程序设计的质量和效率。结构化程序由若干个基本结构组成。每一个基本结构可以包含一个或若干个语句。有三种基本结构: 1顺序结构,见图32。先执行A操作,再执行B操作,两者是顺序执行的关系。,图3.2,2。选择结构,见图,p代表一个条件,当p条件成立(或称为“真”)时执行A,否则执行B。注意,只能执行A或B.两条路径汇合在一起然后出口。,由选择结构可以派生出另一种基本结构:多分支选择结构,见图。根据k的值(k1,k2,,kn不同而决定执行A1,A2,,

5、An之一。,3循环结构,有两种循环结构: (1)当型循环结构,见图34。当p条件成立(“真”)时,反复执行A操作。直到p为“假”时才停止循环。 (2)直到型循环结构,见图35。先执行A操作,再判断p是否为“假”,若p为“假”,再执A行、如此反复,直到p为“真”为止。,已经证明,由以上基本结构组成的程序能处理任何复杂的问题。各图方框中的A,B,A1,An,等可以是一个简单的语句,也可以又是一个基本结构。例如,下图是一个顺序结构,它由两个操作顺序组成。虚线框内是一个当型循环结构,可以用“B表示,因此图3就可以理解为顺序结构的图例,B,33赋值语句 赋值语句是由赋值表达式加上一个分号构成。由于赋值语

6、句应用十分普遍,所以专门再讨论一下。 C语言的赋值语句具有其它高级语言中赋值语句的一切特点和功能。但也应当注意到它们的不同: C语言中的赋值号“=”作为赋值运算符; 关于赋值表达式与赋值语句的概念,其它多数高级语言没有“赋值表达式”这一概念。作为赋值表达式可以被包括在其它表达式之中.,例如 if (ab)0) ta; 其作用是:先进行赋值运算(将b的值赋给a),然后判断a是否大于,如大于是,执行t=a。在if语句中的“a=b”不是赋值语句而是赋值表达式,这样写是合法的。 if(ab;)0) ta;(),34 数据输出 首先说明,C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。在C

7、的标准函数库中(stdio.h)提供了一些输入输出函数,例如,printf函数和scanf函数。在使用它们时,千万不要简单地认为它们是c语言的“输入输出语句”。,341 putchar函数(字符输出函数) putchar函数的作用是向终端输出一个字符.例如 putchar(c); 输出字符变量c的值。c可以是字符型变量或整型变量。在使用标准IO库函数时,要用预编译命令“include”将“stdio.h文件包括到用户源文件中。即 stdio.h是standard input & output的缩写,它包含了与标准I/ O库有关的变量定义和宏定义(有关预编译命令见第七章)。,在需要使用标准IO库

8、中的函数时,应在程序前使用上述预编译命令,但在用printf和scanf函数时,则可以不要(只有printf和scanf例外)。,例31 include “stdio.h” main() char a,b,c; a=”B”;b=O;c=Y; putchar(a); putchar(b); putchar(c); ,运行结果: BOY 也可以输出控制字符,如putchar(n)输出一个换行符,如果将例31程序最后一行改为 putchar(a); putchar(n); putchar(b); putchar(c); putchar(n )。 则输出结果为: B O Y,也可以输出其它转义字符,如

9、: putchar(101) (输出字符A)putchar() (输出单引号字符),342 printf函数(格式输出函数) printf函数,它的作用是向终端输出若干个任意类型的数据。 一、 printf函数的一般格式为 printf(格式控制,输出表列) “格式控制”是用双引号括起来的字符串,也称“转换控制字符串”,它包括两种信息: 1格式说明,由“”和格式字符组成,如d,f等。它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“”字符开始的。,2普通字符,即需要原样输出的字符。 “输出表列”是需要输出的一些数据,可以是表达式。 例如: printf (”a=d b=d”,a,b)

10、; printf (” a+b=d ,a-b=”,a+b,a-b); 在上面双引号中的字符除了“d”以外,还有非格式说明的普通字符,它们按原样输出。如果a、b值分别为3、4,则输出为 a=3 b=4 其中有下划线的字符是printf函数中的“格式控制”字符串中的普通字符原样输出的结果。,由于printf是函数,因此,“格式控制”字符串和“输出表列”实际上都是函数的参数。 可以表示为 printf(参数1,参数2,参数3,参数n) printf函数的功能是将参数2参数n。按参数1给定的格式输出。,二、格式字符 对不同类型的数据用不同的格式字符。有以下几种格式字符: 1d格式符。用来输出十进制整数

11、。有以下几种用法: (1)d,按整型数据的实际长度输出(见上面)。 (2)md,m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出,如 printf (“4d,4d”,a,b) 若a123,d=12345 则输出结果为: _123,12345,(3)ld,输出长整型数据。如 1ong a=135790; printf(”ld,a); 如果用d输出,看是否有溢出,对1ong型数据一般应当用ld格式输出。对长整型数据也可以指定字段宽度,如将上面printf函数中的“ld”改为“81d”则输出为 _ _135790 一个int型数据可以用d或ld格式输出。,2

12、. o格式符,以8进制数形式输出整数。由于是将内存单元中的各位的值(0或1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制数的一部分输出。 例如,-在内存单元中如下: a=-1 11 11 11 11 11 11 11 11 int a-1 printf(”d,o”,a, a); 输出为 1,177777 不会输出带负号的八进制整数。对长整数(1ong型)可以用“1o。”格式输出。,3x格式符,以16进制数形式输出整数,同样不会出现负的十六进制数。例如: int a-1; printf(”x,o,d”,a,a,a); 输出结果为 ffff,177777,-1 同样可以用“

13、lx”输出长整型数,也可以指定输出字段的宽度,如“12x”,4u格式符,用来输出unsigned型数据,即无符号数,以十进制形式输出。 一个有符号整数(int型)也可以用u格式输出;反之,一个unsigned型数据也可以用d格式输出。按相互赋值的规则处理(见第二章2.9)。unsigned型数据也可用o或x格式输出。,例32 main() unsigned int a=65535; int b=-2; printf(”a=%d,%o,%x,%un”,a,a,a,a); printf(”b=%d,%o,%x,%un”,b,b,b,b); 运行结果为: a一1,177777,ffff,65535

14、11 11 11 11 11 11 11 11 b一2177776,fffe,65534 11 11 11 11 11 11 11 10,5c格式符,用来输出一个字符。如: char ca; printf(”c”,c); 输出字符a, 请注意:“c”中的c是格式符,逗号右边的c是变量名,不要搞混。 一个整数,只要它的值在0255范围内,就可以用字符形式输出,在输出前,将该整数转换成相应的ASCII字符;反之,一个字符数据也可以用整数形式输出。,例33】 main ( ) char c=a; int i=97; printf(”c,dn”,c,c); printf(”c,dn”,i,i); 运行

15、结果为: a,97 a, 97 也可以指定输出字数宽度, 如果有 printf (”3c”,c) 则输出:_ _ a,即c变量输出占3列,前2列补空格。,6s格式符,用来输出一个字符串。有几种用法: (1)s, 例如 printf(”%s”,”CHINA”) 输出 CHINA 字符串(不包括双引号)。 (2)ms,输出的字符串占m列,如字符串本身长度大于m,则突破m的限制,将字符串全部输出。若串长小于m,则左补空格。,(3)-ms,如果串长小于m,则在m列范围内,字符串向左靠,右补空格。 (4)m.ns,输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。 (5)-m.ns,其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果nm,则m自动取n值即保证n个字符正常输出。,例34 main ( ) printf(”%3s,%7.2s,%.4s,%-

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

当前位置:首页 > 高等教育 > 大学课件

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