C语音顺序结构程序设计_第1页
C语音顺序结构程序设计_第2页
C语音顺序结构程序设计_第3页
C语音顺序结构程序设计_第4页
C语音顺序结构程序设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C C C语言程序设计语言程序设计第第3 3章章 顺序结构程序设计顺序结构程序设计语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C问题:一年有春夏秋冬四季,按序执行,做事亦有先后问题:一年有春夏秋冬四季,按序执行,做事亦有先后顺序,那么顺序,那么C C语言在编写程序时可以采用这样的顺序结语言在编写程序时可以采用这样的顺序结构吗?构吗? 按程序书写的前后顺序依次按序执行按程序书写的前后顺序依次按序执行。 C C语言同样提供了这种最简单的程序设计语言同样提供了这种最简单的程序设计结构:顺序结构。结构:顺序结构。引子引子语

2、语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C 本章要点本章要点第第3 3章章 顺序结构程序设计顺序结构程序设计 本章难点本章难点n C语言的基本语句语言的基本语句n 字符输入输出函数字符输入输出函数n 格式化输入输出函数格式化输入输出函数语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C3.13.23.33.4C语言语句概述语言语句概述字符数据的输入输出字符数据的输入输出格式化输入输出函数格式化输入输出函数顺序结构程序设计举例顺序结构程序设计举例本章主要内容本章主要内容语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C说明语句说明语句变量定义或说明

3、变量定义或说明数据类型定义数据类型定义函数声明等语句函数声明等语句可执行语句:用来向计算机发出操作指令。可执行语句:用来向计算机发出操作指令。简单语句简单语句表达式语句:表达式;例:表达式语句:表达式;例: i+; i+; 函数调用语句函数调用语句控制语句控制语句空语句:只有分号空语句:只有分号“;”组成的语句,程序执行组成的语句,程序执行时不产生任何动作。时不产生任何动作。复合语句:把多个语句用括号复合语句:把多个语句用括号“”括起来组成的一个括起来组成的一个语句语句1 1)条件判断语句:)条件判断语句:ifif语句、语句、switchswitch语句等;语句等;2) 2) 循环执行语句:循

4、环执行语句:do-whiledo-while语句、语句、whilewhile语句、语句、forfor语句;语句;3) 3) 转向语句:转向语句:breakbreak语句、语句、gotogoto语句、语句、continuecontinue语语句、句、returnreturn语句。语句。3.1 C3.1 C语言语句概述语言语句概述语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C3.13.23.33.4C语言语句概述语言语句概述字符数据的输入输出字符数据的输入输出格式化输入输出函数格式化输入输出函数顺序结构程序设计举例顺序结构程序设计举例本章主要内容本章主要内容语语言言第第 3 3

5、章章顺顺序序结结构构程程序序设设计计C C格式格式: putchar( ch: putchar( ch ) )参数参数: ch: ch为一个字符常量、变量或一个转义字符为一个字符常量、变量或一个转义字符功能:把字符功能:把字符chch输出到显示器上输出到显示器上返值:正常,为显示的代码值;出错,为返值:正常,为显示的代码值;出错,为EOF(-1)EOF(-1)C C语言无语言无I/OI/O语句,语句,I/OI/O操作由函数实现操作由函数实现 # #include stdio.hinclude 字符输出函数字符输出函数3.2 3.2 字符数据的输入输出字符数据的输入输出语语言言第第 3 3 章章

6、顺顺序序结结构构程程序序设设计计C C#include stdio.h#include main()main() char ch char ch=B;=B; putchar(ch putchar(ch); /); /* *输出变量的值字符输出变量的值字符B B* */ / putchar(n putchar(n); /); /* *输出一个换行符输出一个换行符* */ / putchar(B putchar(B); /); /* *直接输出字符直接输出字符B B* */ / putchar(n putchar(n); /); /* *输出一个换行符输出一个换行符* */ / putchar(0

7、 x42); / putchar(0 x42); /* *使用使用ASCIIASCII值输出字符值输出字符B B* */ / putchar(n putchar(n); /); /* *输出一个换行符输出一个换行符* */ / 运行结果:运行结果:B B B B B B例例3.13.1语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C格式格式:getchar:getchar( )( )功能:从键盘读一字符功能:从键盘读一字符返值:正常,返回读取的代码值;出错返值:正常,返回读取的代码值;出错, ,返回返回EOF(-1)EOF(-1)#include stdio.h#include

8、 main()main() char c; char c; c=getchar c=getchar(); (); putchar(c putchar(c);); 运行结果:运行结果:字符输入函数字符输入函数例例3.23.2语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C3.13.23.33.4C语言语句概述语言语句概述字符数据的输入输出字符数据的输入输出格式化输入输出函数格式化输入输出函数顺序结构程序设计举例顺序结构程序设计举例本章主要内容本章主要内容语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C格式:格式:printfprintf(“(“格式控制串格式控制串

9、”,输出表,输出表列列) )功能:按指定格式向显示器输出数据功能:按指定格式向显示器输出数据返值:正常,返回输出字节数;出错,返回返值:正常,返回输出字节数;出错,返回EOF(-1)EOF(-1)输出表输出表列列:要输出的数据(可以没有,多个时以:要输出的数据(可以没有,多个时以“,”“,”分隔)分隔)格式控制串:包含两种信息格式控制串:包含两种信息格式说明:格式说明: % % 修饰符修饰符 格式字符格式字符,用于指定输出格式,用于指定输出格式普通字符或转义序列:原样输出普通字符或转义序列:原样输出格式字符格式字符格式输出函数格式输出函数3.3 3.3 格式化输入输出函数格式化输入输出函数语语

10、言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C Cd,ix,Xoucse,Efg%十六进制无符号整数十六进制无符号整数不带符号十进制整数不带符号十进制整数十进制整数十进制整数指数形式浮点小数指数形式浮点小数单一字符单一字符字符串字符串八进制无符号整数八进制无符号整数小数形式浮点小数小数形式浮点小数e e和和f f中较短一种中较短一种百分号本身百分号本身int a=567;printf ( “%d”,a);int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=567;printf(“%u”,a);char a=65;printf(

11、“%c”,a);printf(“%s”,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);567ff101567AABC5.677890e+02567.789000567.789%说明说明格式字符要用小写格式字符要用小写格式字符与输出项个数应相同,按先后顺序一一对应格式字符与输出项个数应相同,按先后顺序一一对应输出转换输出转换: :格式字符与输出项类型不一致格式字符与输出项类型不一致, ,自动按指定格式输出自动按指定格式输

12、出例例 intint a=3,b=4; a=3,b=4; printf(“%d printf(“%d %dn”,a,b); %dn”,a,b); printf(“a printf(“a=%d , b=%dn”,a,b);=%d , b=%dn”,a,b); 例例 intint a=3,b=4; a=3,b=4; printf(“%d printf(“%d %dn”,a,b); %dn”,a,b); printf(“a printf(“a=%d , b=%dn”,a,b);=%d , b=%dn”,a,b);输出结果输出结果: 3 4: 3 4 a=3, b=4 a=3, b=411 11 11

13、 11 11 11 11 1165535格式字符格式字符语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C附加格式说明符(修饰符)附加格式说明符(修饰符).n对实数对实数,指定小数点后位数指定小数点后位数(四舍五入四舍五入)对字符串对字符串,指定实际输出位数指定实际输出位数修饰符修饰符功功 能能m输出数据域宽输出数据域宽,数据长度数据长度m,左补空格左补空格;否则按实际输出否则按实际输出输出数据在域内左对齐(缺省右对齐输出数据在域内左对齐(缺省右对齐) )-指定在有符号数指定在有符号数的正数前显示正号的正数前显示正号(+)(+)+输出数值时指定左面不使用的空位置自动填输出数值时指

14、定左面不使用的空位置自动填0 00在八进制和十六进制数前显示前导在八进制和十六进制数前显示前导0 0,0 0 x x#在在d,o,x,ud,o,x,u前,指定输出精度为前,指定输出精度为longlong型型在在e,f,ge,f,g前,指定输出精度为前,指定输出精度为doubledouble型型l语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C例例 int a=1234; float f=123.456; char ch=a; printf(“%8d,%2dn”,a,a); printf(“%f,%8f,%8.1f,%.2f,%.2en”,f,f,f,f,f); printf(“

15、%3cn”,ch);运行运行 1234,1234结果:结果: 123.456000,123.456000, 123.5,123.46,1.23e+02 a例例 static char a=“Hello,world!” printf(“%sn%15sn%10.5sn%2.5sn%.3sn”,a,a,a,a,a);运行结果:运行结果:Hello,world! Hello,world! Hello Hello Hel 例例 m.nm.n语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C例例 int a=1234; float f=123.456; static char c=“Hell

16、o,world!”; printf(“%8d,%-8dn”,a,a); printf(“%10.2f,%-10.1fn”,f,f); printf(“%10.5s,%-10.3sn”,c,c);运行结果:运行结果:1234, 1234 123.46,123.5 Hello,Hel 例例 - -语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C例例 int a=1234; float f=123.456; printf(“%08dn”,a); printf(“%010.2fn”,f); printf(“%0+8dn”,a); printf(“0+10.2fn”,f); 例 0 、+

17、例例 int a=123; printf(“%o,%#o,%X,%#Xn”,a,a,a,a); 例例 #/00001234/0000123.46/000+1234/000+123.56/173,0173,7B,0X7B语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C格式输入函数格式输入函数格式格式: scanf: scanf(“(“格式控制串格式控制串”,地址,地址列列表)表)功能:按指定格式从键盘读入数据,存入地址功能:按指定格式从键盘读入数据,存入地址列列表指定的表指定的 存储单元中存储单元中, ,并按回车键结束并按回车键结束返值:正常,返回输入数据个数返值:正常,返回输入

18、数据个数地址表:变量的地址,常用取地址运算符地址表:变量的地址,常用取地址运算符& &格式字符格式字符:d,i,o,x,u,c,s,f,e:d,i,o,x,u,c,s,f,e例例 scanf(“%d”,&ascanf(“%d”,&a);); 输入:输入:10 10 则则 a=10a=10例例 scanf(“%x”,&ascanf(“%x”,&a);); 输入:输入:11 11 则则 a=17a=17语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C附加格式说明符(修饰符)附加格式说明符(修饰符)l l修饰符修饰符功功 能能h hm

19、m* *用于用于d,o,xd,o,x前,指定输入为前,指定输入为shortshort型整数型整数用于用于d,o,xd,o,x前,指定输入为前,指定输入为longlong型整数型整数用于用于e,fe,f前,指定输入为前,指定输入为doubledouble型实数型实数指定输入数据宽度,遇空格或不可转换字符则结束指定输入数据宽度,遇空格或不可转换字符则结束抑制符,指定输入项读入后不赋给变量抑制符,指定输入项读入后不赋给变量例例 scanf(“%4d%2d%2d”,&yy,&mm,&dd);scanf(“%4d%2d%2d”,&yy,&mm,&dd);

20、输入输入 19991015 19991015 则则19991999yyyy, 10 , 10 mm, 15 mm, 15 dddd例例 scanf(“%3d%scanf(“%3d%* *4d%f”,&k,&f);4d%f”,&k,&f); 输入输入 12345678765.43 12345678765.43 则则123123k, 8765.43k, 8765.43f f例例 scanf(“%2dscanf(“%2d % %* *3d3d %2d”,&a,&b);%2d”,&a,&b); 输入输入 12 12 345345 6767

21、 则则1212a, 67a, 67b b例例 scanf(“%3c%2c”,&c1,&c2);scanf(“%3c%2c”,&c1,&c2); 输入输入 abcdeabcde 则则aac1, d c1, d c2c2语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C输入分隔符的指定输入分隔符的指定一般以空格、一般以空格、TABTAB或回车键作为分隔符或回车键作为分隔符其它字符做分隔符:格式串中两个格式符间字符其它字符做分隔符:格式串中两个格式符间字符例例 scanf(“%d%o%x”,&a,&b,&cscanf(“%d%o%

22、x”,&a,&b,&c);); printf(“aprintf(“a=%d,b=%d,c=%dn”,a,b,c);=%d,b=%d,c=%dn”,a,b,c); 输入输入 123 123 123 123 123 123 输出输出 a=123,b=83,c=291a=123,b=83,c=291例例 scanf(“%d:%d:%d”,&h,&m,&sscanf(“%d:%d:%d”,&h,&m,&s);); 输入输入 12:30:45 12:30:45 则则12 12 h, 30 h, 30 m, 45 m, 45 s s例

23、例 scanf(“%d,%d”,&a,&bscanf(“%d,%d”,&a,&b) ) 输入输入 3,4 3,4 则则3 3a, 4 a, 4 b b例例 scanf(“ascanf(“a=%d,b=%d,c=%d”,&a,&b,&c)=%d,b=%d,c=%d”,&a,&b,&c); ; 输入输入 a=12,b=24,c=36 a=12,b=24,c=36 语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C说明:说明:用用“%c”“%c”格式符时,空格和转义字符作为有效字符格式符时,空格和转义字符作

24、为有效字符输入输入如如 scanf(“%c%c%c”,&c1,&c2,&cscanf(“%c%c%c”,&c1,&c2,&c3);3); 若输入若输入a a b b c c 则则a ac1, c1, c2, b c2, b c3c3输入数据时,遇以下情况认为该数据结束:输入数据时,遇以下情况认为该数据结束:遇空格、遇空格、TABTAB、或回车、或回车遇宽度结束遇宽度结束遇非法输入遇非法输入如如 scanf(“%d%c%f”,&a,&b,&cscanf(“%d%c%f”,&a,&b,&c);); 若输

25、入若输入12341234a123o.26 a123o.26 则则 1234 1234 a, a a, a b, 123 b, 123 c c输入函数留下的输入函数留下的“垃圾垃圾”:例例 intint x; x; char ch char ch; ; scanf(“%d”,&x scanf(“%d”,&x);); ch=getchar ch=getchar();(); printf(“x=%d,ch=%dn”,x,ch printf(“x=%d,ch=%dn”,x,ch););执行:执行:123123 输出:输出:x=123,ch=10 x=123,ch=10例例 intint

26、 x; x; char ch char ch; ; scanf(“%d”,&x scanf(“%d”,&x);); scanf(“%c”,&ch scanf(“%c”,&ch);); printf(“x=%d,ch=%dn”,x,ch printf(“x=%d,ch=%dn”,x,ch););执行:执行:123123 输出:输出:x=123,ch=10 x=123,ch=10解决方法:解决方法:(1 1)用)用getchargetchar()()清除清除(2 2)用函数)用函数fflush(stdinfflush(stdin) )清除全部剩余内容清除全部剩余内容

27、(3 3) 用格式串中空格或用格式串中空格或“%“%* *c”c”来来“吃掉吃掉”例例 intint x; x; char ch char ch; ; scanf(“%d”,&x scanf(“%d”,&x);); scanf(“ %c”,&ch scanf(“ %c”,&ch););或或 scanf(“%scanf(“%* *c%c”,&chc%c”,&ch);); 语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C3.13.23.33.4C语言语句概述语言语句概述字符数据的输入输出字符数据的输入输出格式化输入输出函数格式化输入输

28、出函数顺序结构程序设计举例顺序结构程序设计举例本章主要内容本章主要内容语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C例例 输入圆半径,输出圆周长和面积。输入圆半径,输出圆周长和面积。运行情况如下:运行情况如下:5 l=31.4159 s=78.539722rsrl文件包含预处理命令变量定义输入数据输出数据3.4 3.4 顺序结构顺序结构程序程序设计设计举例举例语语言言第第 3 3 章章顺顺序序结结构构程程序序设设计计C C #include main() int a,b; int x,y; printf(Input the head: ); scanf(%d,&a); pr

温馨提示

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

评论

0/150

提交评论