第三章 最简单的c程序设计—顺序程序设计.ppt
《第三章 最简单的c程序设计—顺序程序设计.ppt》由会员分享,可在线阅读,更多相关《第三章 最简单的c程序设计—顺序程序设计.ppt(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章 最简单的c程序设计顺序程序设计3.1 C语句概述(熟记)3.2 程序的三种基本结构(重点、掌握)3.3 赋值语句(熟记)3.4 数据输入输出的概念及在语言中的实现(掌握)3.5 字符数据的输入输出(掌握)3.6 格式输入与输出(掌握)3.7 顺序结构程序设计举例(掌握)第3章 最简单的c程序设计顺序程序设计第二章 数据类型、运算符与表达式1.C程序的构成:由一个main主函数和若干个用户自定义的函数构成。2.C函数构成:声明部分、处理(执行)部分、输出部分3.C语言语句的作用:用来向计算机系统发出操作指令,一个语句经编译后产生若干条机器指令。一个实际的程序应当包含若干语句。3.1 C语
2、句概述(熟记)4.注:C语句都是用来完成一定操作任务的,声明部分的内容不应称为语句。如:int a;不是一个c语句,它不产生机器操作,而只是对变量的定义。5.一个函数包含声明部分和执行部分,执行部分即由语句组成。1.程序的三种基本结构:顺序结构程序:按照书写顺序依次执行语句选择结构程序:按照条件判断选择执行语句循环结构程序:通过条件控制循环执行语句3.2 程序的三种基本结构(重点、掌握)(1)顺序结构,如图所示,虚线框内是一个顺序结构。特点:按照程序的书写顺序依次执行每条语句(2)选择结构,或称选取结构,或称分支结构,如图所示:特点:无论条件p是否成立,只能执行A框或B框之一,不可能既执行A框
3、又执行B框。无论走哪一条路径,在执行完A或B之后,都经过b点,然后脱离本选择结构。A或B两个框中可以有一个是空的,即不执行任何操作。(3)循环结构,它又称,它又称重复结构。分为两种:分为两种:当型(While型)循环结构结构 特点:当给定的条件p1成立时,执行A框操作,执行完A后,再判断条件p1是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次p1条件不成立为止,此时不执行A框,而从b点脱离循环结构。直到型(Until型)循环特点:先执行A框,然后判断给定的p2条件是否成立,如果p2条件不成立,则再执行A,然后再对p2条件作判断,如果p2条件仍然不成立,又执行A如此反复执行A,直
4、到给定的p2条件成立为止,此时不再执行A,从b点脱离本循环结构。1.概念:在赋值表达式的尾部加上一个“;”号,就构成了赋值语句。如:赋值表达式:c=a+b赋值表达式:c=a+b;2.形式各异:如:a=3;a=b=c;i+;-i;等 3.3 赋值语句(了解)3.注意:1)C中赋值号“=”是优先级最底的一个运算符,其他多数语言略有不同。2)赋值表达式的概念如:if(a=b)0)t=a;若写为:if(a=b;)0)t=a;-错误 if(a=b;)0);t=a;-错误与自然语言对比:如果。,那么。(句子结束才使用句号)1.输出:将数据从计算机内部送到计算机外部设备上的操作。(屏显、打印、磁盘存盘等)2
5、.输入:将数据从计算机外部送到计算机内部设备的操作。(键盘键入、磁盘、光盘、扫描仪等)3.C语言本身不包含输入输出语句,需调用标准输入输出库函数:#include 或#include studio.h“4.studio.h:standard input&output head的缩写,它包含了与标准i/o库有关的变量定义和宏定义。3.4 数据输入输出的概念在C语言中的实现(重点/掌握)3.5 字符数据的输入输出3.5.1 putchar函数(字符输出函数)1.功能:是向终端输出一个字符。2.形式:getchar(),函数的值就是从输入设备得到的字符。如:putchar(c);输出字符变量c的值,
6、c可以是字符型变量或整型变量。例3.1 输出单个字符。#include main()char a,b,c;a=b;b=o;c=y;putchar(a);putchar(b);putchar(c);运行结果:boy3.5.2 getchar函数(字符输入函数)1.功能:从终端(或系统隐含指定的输入设备)输入一个字符,getchar函数没有参数2.形式:getchar(),函数的值就是从输入设备得到的字符。例4.2 输入单个字符#include main()charc;c=getchar();putchar(c);1.格式:printf(格式控制,输出表列)如:printf(%d,%cn,i,c)
7、2.注释:(1)“格式控制”:用双引号括起来的字符串,也称“转换控制字符串”,它包括两种信息:格式说明,以%开始,以一个格式字符结束,如%d,%f等。它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的。普通字符,即需要原样输出的字符。如:上面printf函数中双引号内的逗号、空格和换行符。(2)“输出表列”:是需要输出的一些数据,可以是单独某个变量名也可以是一个表达式。3.6.1 printf函数(格式输出函数)(重点/掌握)1.d格式符:以十进制整数形式输出。2.用法:%d:按整型数据的实际长度输出。%md:指定输出字段宽度(长度)为m。如果数据的位数小于m,则左端补
8、以空格(输出数据默认靠右对齐,二者间加负号,则靠左对齐),若大于,则按实际位数输出。如:int a=123,b=12345,printf(%4d,%4d,a,b);则输出结果:123,12345%ld:输出长整型数据。如:long a=135790;printf(%ld,a);一 printf函数中常用的格式说明(重点/掌握)如:long a=135790;printf(%ld,a);上例若用%d输出,就会发生错误,因为整型数据的范围为-3276832767。对long(长整型)数据应当用%ld格式输出,且也可以指定字段宽度,如将上面printf函数中的“%ld”改为“%8ld”,则 输出结果
9、:135790 (前有两空格)共8列 注:一个int型数据既可以用%d也可用%ld格式输出。(2)o格式符:以八进制数形式输出整数。由于是将内存单元中的各位的值(0或1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制数的一部分输出。如:int a=-1;printf(%d,%o,a,a);-1在内存单元中的存放形式(以补码形式存放)如下:1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1结果输出为:-1,177777注:该格式不会输出带负号的八进制整数。对长整数(long型)可以用“%lo”格式输出,同样可以指定字段宽度。如:printf(“%8o”,a)结果
10、输出为 177777。(3)x格式符:以十六进制数形式输出整数。同样不会出现负的十六进制数。如:int a=-1;printf(“%x,%o,%d”,a,a,a);输出结果为:ffff,177777,-1同样可以用“%lx”输出长整型数,也可以指定输出字段的宽度,如“%12x”。(4)u格式符:用来输出unsigned型数据,即无符号数,以十进制形式输出。一个有符号整数(int型)也可以用%u格式输出;反之,一个unsigned型数据也可以用%d格式输出。按相互赋值的规则处理。unsigned型数据也可用%o或%x格式输出。例4.3无符号数据的输出。main()unsigned int a=6
11、5535;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 b=-2,177776,fffe,65534 (5)c格式符:用来输出一个字符。如:charc=a;printf(%c,c);输出字符a,请注意:“%c”中的c是格式符,逗号右边的c是变量名。一个整数,只要它的值在0255范围内,也可以用字符形式输出,在输出前,系统会将该整数作为ascii码转换成相应的字符;反之,一个字符数据也可以用整数形式输出。例:字符数据的输出。main
12、()char c=a;int i=97;printf(%c,%dn,c,c);printf(%c,%dn,i,i);运行结果为:a,97 a,97 也可指定输出字数宽度:printf(%3c,c)则输出:“a”,即c变量输出占3列,前2列补空格。(6)s格式符:用来输出一个字符串。%s:输出一个字符串例如:printf(%s,china)结果:china%ms:输出的字符串占列。如字符串本身长度大于m,则突破的限制,将字符串全部输出;若串长小于m,则左补空格(默认靠右对齐)。%-ms,如果串长小于,则在列范围内,字符串向左对齐期,右补空格。%mns:输出占列,但只取字符串中左端n个字符。这n个
13、字符输出在列的右侧,左补空格。%.ns:若n小于字符串实际长度,则只输出字符串的前n个字符。%-mns:其中、n含义同上,n个字符输出在列范围的左侧,右补空格。如果n,则自动取n值,即保证n个字符正常输出。例 字符串的输出。main()printf(%3s,%7.2s,%.4s,%-5.3sn,china,china,china,china)结果输出:china,ch,chin,chi 说明:程序中第3个输出项,格式说明为“%.4s”,即只指定了n,没指定,自动使=n=4,故占4列。(7)f格式符:用来输出实数(包括单、双精度),以小数形式输出。%f%f:不指定字段宽度,由系统自动指定,使整数
14、部分全部如数输出,并输出6位小数。注意:并非全部数字都是有效数字,单精度实数的有效位数一般为7位。例 输出实数时的有效位数。main()float x,y;x=111111111;y=222222222;printf(%f,x+y);运行结果为:333333328125 显然,只有前7位数字是有效数字。千万不要以为凡是打印出来的数字都是准确的。双精度数也可用%f格式输出,它的有效位数一般为16位,给出小数6位。例 输出双精度数时的有效位数。main()double x,y;x=1111111111111.111111111;y=2222222222222.222222222;printf(%f
15、,x+y);输出结果为:3333333333333.333010 可以看到最后3位小数(超过16位)是无意义的。%nf:指定输出的数据共占列,其中有n位小数。如果数值长度小于,则左端补空格。%-nf:与%nf基本相同,只是使输出的数值向左端靠,右端补空格。例 输出实数时指定小数位数。main()float f=123.456;printf(%f%10f%10.2f%.2f%-10.2fn,f,f,f,f,f);输出结果:123.456001 123.456001 123.46 123.46 123.46 f的值应为123.456,但输出为123.455994,这是由于实数在内存中的存储误差引起
16、的。(8)e格式符:以指数形式输出实数。%e:不指定输出数据所占的宽度和数字部分的小数位数,有的c编译系统自动指定给出6位小数,指数部分占5位(如e+002),其中“e”占1位,指数符号占1位,指数占3位。注:注:数值按规范化指数形式输出(即小数点前必须有而且只有1位非零数字)。如:printf(%e,123.456);输出:1.234560e+002。6列 5列/*输出的实数共占13列宽度*/%m.ne和%-m.ne:、n和“-”字符含义与前相同。此处n指拟输出的数据的小数部分(又称尾数)的小数位数。如:f=123456,则:printf(%e%10e%10.2e%.2e%-10.2e,f,
17、f,f,f,f);输出如下:1.234560e+002 1.234560e+002 1.23e+002 1.23e+002 1.23e+002 13列 13列 10列 9列 10列(9)g格式符:用来输出实数,它根据数值的大小,自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的零。例如:若f=123468,则printf(“%f%e%g”,f,f,f);结果输出:123.468000 1.234680e+002 123.468 10列 13列 10列说明:用%f格式输出占10列,用%e格式输出占13列,用%g格式时,自动从上面两种格式中选择短者(今以%f格式为短),故占10列
18、,且按%f格式用小数形式输出,最后3个小数位“0”为无意义的0,不输出,因此输出123.468,然后右补3个空格。%g格式用得较少。(1)除了X,E,G外,其他格式字符必须用小写字母,如:%d不能写成%D。(2)可以在printf函数中的“格式控制”字符串内包含“转义字符”,如“n”、“t”、“b”、“r”、“a”(beng的响铃)、“377”等。(3)一个格式说明以“%”开头,以上述d、o、x、u、c、s、f、e、g等字符之一作为结束,中间可以插入附加格式字符(也称修饰符)。二 使用printf函数时的注意事项(P56P56)例如:第一个格式说明为“%c”而不包括其后的f,第二个格式说明为“
19、%f”,不包括其后的s,第三个格式说明为%s。其他的字符为原样输出的普通字符。(4)如果想输出字符“%”,则应该在“格式控制”字符串中用连续两个%表示。如:printf(%f%,10/3);输出:0333333%(5)格式控制必须与输出项一一对应,即:数目相同,类型匹配,否则就无法正确输出,且系统也不会报错,输出项之间用逗号间隔。printf(格式控制,输出表列)如:printf(“a=%d,b=%cn”,a,b);输出项,实参格式控制1.一般形式:scanf(格式控制,地址表列)如:scanf(“%d,%d,%d”,&a,&b,&c);a.“格式控制”:以%开始,以一个格式字符结束,中间可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 最简单的c程序设计顺序程序设计 第三 简单 程序设计 顺序
限制150内