




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021/8/61第第3章章 顺序结构程序设计顺序结构程序设计 3.1 赋值语句赋值语句赋值语句是由赋值表达式再加上分号构成的表达式语句。赋值语句是由赋值表达式再加上分号构成的表达式语句。 赋值语句的一般形式为:赋值语句的一般形式为: 变量变量= =表达式表达式; ;赋值语句的功能和特点都与赋值表达式相同。赋值语句的功能和特点都与赋值表达式相同。2021/8/62第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输入输出函数输入输出函数语言要求在使用输入语言要求在使用输入/ /输出库函数之前必输出库函数之前必须包含须包含stdio.hstdio.h文件。文件。包含形式如下:包含形式如下:
2、#include#include或或 #include stdio.h#include stdio.h2021/8/63第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输入输出函数输入输出函数3.2.1 字符数据输入输出函数字符数据输入输出函数 1字符数据输入函数字符数据输入函数格式:格式:getchar()功能:功能:从键盘上接收输入的一个字符。从键盘上接收输入的一个字符。例例3.1 从键盘输入一个字符,并将其存入字符型变量从键盘输入一个字符,并将其存入字符型变量c 中。中。#include stdio.hmain() char c; c= getchar(); 其中其中c是字符型(是
3、字符型(char)或整型()或整型(int)变量。)变量。2021/8/64第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输入输出函数输入输出函数3.2.1 字符数据输入输出函数字符数据输入输出函数 1字符数据输入函数字符数据输入函数2字符数据输出函数字符数据输出函数格式:格式:putchar(c)功能:功能:向终端输出一个字符。向终端输出一个字符。说明:说明:(1)c可以是字符型,也可以是整型。可以是字符型,也可以是整型。 (2)c可以是变量,可以是常量,也可以是表达式。可以是变量,可以是常量,也可以是表达式。2021/8/65第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输
4、入输出函数输入输出函数3.2.1 字符数据输入输出函数字符数据输入输出函数 1字符数据输入函数字符数据输入函数2字符数据输出函数字符数据输出函数例例3.2 从键盘输入一个字符,在屏幕上显示出来。从键盘输入一个字符,在屏幕上显示出来。#include stdio.hmain() char c; c=getchar(); /*从键盘输入一个字符从键盘输入一个字符*/ putchar(c); /*在屏幕上显示一个字符在屏幕上显示一个字符*/2021/8/66第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输入输出函数输入输出函数3.2.2 格式化输入输出函数格式化输入输出函数1 1格式化输出函
5、数格式化输出函数格式:格式: printf(printf(格式控制格式控制, ,输出项表输出项表) );功能:功能:将将“输出项表输出项表”中给出的输出项按中给出的输出项按“格式控制格式控制”中规定中规定的输出格式输出到标准输出设备。的输出格式输出到标准输出设备。 说明:说明:(1 1)输出项表中以逗号分隔列出需要输出的项(变量、常量、或表达式)。)输出项表中以逗号分隔列出需要输出的项(变量、常量、或表达式)。(2 2)格式控制是用双引号括起来的字符串,包括普通字符和格式说明。)格式控制是用双引号括起来的字符串,包括普通字符和格式说明。普通字符:普通字符:是需要原样输出的字符(包括转义字符)。
6、是需要原样输出的字符(包括转义字符)。格式说明:格式说明:由由“%“%“和格式符组成,如和格式符组成,如%c%c和和%f%f等,作用是将要等,作用是将要输出的数据转换为指定格式后输出。输出的数据转换为指定格式后输出。2021/8/67printfprintf函数中使用的格式字符如表所示。函数中使用的格式字符如表所示。格式字符格式字符功能功能d按十进制形式输出带符号的整数(正数前无按十进制形式输出带符号的整数(正数前无+ +号)号)o按八进制形式无符号输出(无前导按八进制形式无符号输出(无前导o o)ox按十六进制形式无符号输出(无前导按十六进制形式无符号输出(无前导oxox)u按十进制无符号形
7、式输出按十进制无符号形式输出c按字符形式输出一个字符按字符形式输出一个字符f按十进制形式输出单、双精度浮点数(默认按十进制形式输出单、双精度浮点数(默认6 6位小数)位小数)e按指数形式输出单、双精度浮点数按指数形式输出单、双精度浮点数s输出以输出以00结尾的字符串结尾的字符串ld长整型输出长整型输出lo长八进制整型输出长八进制整型输出lx长十六进制整型输出长十六进制整型输出lu按无符号长整型输出按无符号长整型输出m格式字符格式字符按宽度按宽度m m输出,右对齐输出,右对齐-m格式字符格式字符按宽度按宽度m m输出,左对齐输出,左对齐m,n格式字符格式字符按宽度按宽度m,nm,n位小数或截取字
8、符串前位小数或截取字符串前n n个字符输出,右对齐个字符输出,右对齐-m,n格式字符格式字符按宽度按宽度m,nm,n位小数或截取字符串前位小数或截取字符串前n n个字符输出,左对齐个字符输出,左对齐2021/8/68例例3.33.3#include#includemain()main() int a=123; int a=123; long b=135790; long b=135790; printf(a=%dn,a); printf(a=%dn,a); printf(a=%4dn,a); printf(a=%4dn,a); printf(a=%2dn,a); printf(a=%2dn,a
9、); printf(b=%ld,b); printf(b=%ld,b); 屏幕显示结果:屏幕显示结果:a=123a=123a= 123a= 123a=123a=123b=135790b=1357902021/8/69例例3.43.4#include#includemain()main() int a=-1; int a=-1; char c=a; char c=a; printf(%d,%o,%x,%un,a,a,a,a); printf(%d,%o,%x,%un,a,a,a,a); printf(%d,%cn,c,c); printf(%d,%cn,c,c); 屏幕显示结果:屏幕显示结果:-
10、1-1,177777177777,ffffffff,65535655359797,a a2021/8/610例例3.53.5#include stdio.h#include stdio.hmain()main() printf(%s,%7.2sn, CHINA, CHINA ); printf(%s,%7.2sn, CHINA, CHINA ); printf( %.4s,%-5.3sn, CHINA, printf( %.4s,%-5.3sn, CHINA, CHINA);CHINA); 屏幕显示结果:屏幕显示结果:CHINACHINA,- - - - -CH- - - - -CHCHINC
11、HIN,CHI- -CHI- -(注:(注:- -表示空格。)表示空格。)2021/8/611例例3.63.6#include#includemain()main() float a=1.23; float a=1.23; printf(%f,%7.2f,%2.1fn, printf(%f,%7.2f,%2.1fn, a,a,a );a,a,a ); 屏幕显示结果:屏幕显示结果:1.2300001.230000,- - -1.23- - -1.23,1.21.22021/8/612第第3章章 顺序结构程序设计顺序结构程序设计 3.2 输入输出函数输入输出函数3.2.2 格式化输入输出函数格式化
12、输入输出函数1 1格式化输出函数格式化输出函数2 2格式化输入函数格式化输入函数格式:格式:scanf(格式控制格式控制,地址表地址表);功能:功能:用来输入任何类型数据,可同时输入多个不同类型用来输入任何类型数据,可同时输入多个不同类型的数据。的数据。说明:说明:(1)地址表中每项以逗号分隔,列出需要输入的项(变)地址表中每项以逗号分隔,列出需要输入的项(变量)的地址,而不是变量名。量)的地址,而不是变量名。 2021/8/613(2)同)同printf函数一样,格式控制是用双引号括起来的函数一样,格式控制是用双引号括起来的字符串。包括普通字符和格式说明。字符串。包括普通字符和格式说明。普通
13、字符:普通字符:是需要原样输入的字符,一般不提倡使用。是需要原样输入的字符,一般不提倡使用。格式说明:格式说明:由由%和格式符组成,如和格式符组成,如%c和和%f等,作用是等,作用是规定按指定的格式输入数据。规定按指定的格式输入数据。scanfscanf函数中使用的格式字符如表所示。函数中使用的格式字符如表所示。格式字符格式字符功能功能d输入十进制整数输入十进制整数o输入八进制整数输入八进制整数x输入十六进制整数输入十六进制整数c输入单个字符输入单个字符s输入字符串输入字符串f,e e输入浮点数(小数或指数形式)输入浮点数(小数或指数形式)hd,hoho,hxhx输入短整型(十进制,八进制,十
14、六进制)数据输入短整型(十进制,八进制,十六进制)数据ld,lolo,lxlx输入长整型(十进制,八进制,十六进制)数据输入长整型(十进制,八进制,十六进制)数据lf,lele输入长浮点型数据(双精度)输入长浮点型数据(双精度)*表示本输入项在读入后不赋给相应的变量表示本输入项在读入后不赋给相应的变量2021/8/614(3 3)scanf scanf 中中“格式控制格式控制”中的格式字符必须与中的格式字符必须与“格式控制格式控制”后的变量的类型匹配。后的变量的类型匹配。例如:例如:int a,b;int a,b;char d;char d;float w;float w;scanf(%d%o
15、, &a,&b );scanf(%d%o, &a,&b );scanf(%c, &d );scanf(%c, &d );scanf(%f, &w );scanf(%f, &w );(4 4)使用)使用%c%c时,空格和转义字符均作为有效字符输入。时,空格和转义字符均作为有效字符输入。例如:例如:char a,b;char a,b;scanf(%c%c,&a,&b); scanf(%c%c,&a,&b); 输入:输入:x yx y结果:结果:a=x b= a=x b= 2021/8/615(5 5)如
16、果格式说明符之间没有任何字符,则在输入)如果格式说明符之间没有任何字符,则在输入非字符型数据时,两个数据之间要使用空格、非字符型数据时,两个数据之间要使用空格、TabTab或或回车键做间隔;如果格式说明符之间包含其他字符,回车键做间隔;如果格式说明符之间包含其他字符,则输入数据时,应输入与这些字符相同的字符做间隔。则输入数据时,应输入与这些字符相同的字符做间隔。例如:例如:scanf(%d,%f,%c,&i,&f,&c);scanf(%d,%f,%c,&i,&f,&c);在输入数据时,应采用如下形式:在输入数据时,应采用如下形式:2020,7.8
17、7.8,a a2021/8/616(6 6)可以在格式说明符的前面指定输入数据所占的宽度,)可以在格式说明符的前面指定输入数据所占的宽度,系统将自动按此宽度来截取所需的数据。系统将自动按此宽度来截取所需的数据。例如:例如:int a,b;int a,b;char d,w;char d,w;scanf(%d%d, &a,&b );scanf(%d%d, &a,&b );scanf(%3d%d, &a,&b );scanf(%3d%d, &a,&b );scanf(%d%c%c, &a,&d,&w );scan
18、f(%d%c%c, &a,&d,&w );输入:输入:1234 231234 23 123456 123456 123a1 123a1结果:结果:a=1234 b=23a=1234 b=23a=123 b=456a=123 b=456a=123 d=a w=1a=123 d=a w=12021/8/617第第3章章 顺序结构程序设计顺序结构程序设计 3.3 注释注释注释行的作用是增强程序的可读性。注释行的作用是增强程序的可读性。注释行的一般形式:注释行的一般形式: / /* *注释内容注释内容* */ /其中,其中,注释内容是对程序段或程序行的注释说明。注释内容是对程序
19、段或程序行的注释说明。 注释行可以作为单独的一行出现在程序中,也可注释行可以作为单独的一行出现在程序中,也可以出现在某个语句后,在编译时忽略。以出现在某个语句后,在编译时忽略。2021/8/618第第3章章 顺序结构程序设计顺序结构程序设计 3.3 注释注释例例3.73.7 计算计算a a、b b两数据之和的两数据之和的C C程序。程序。#include#includemain() main() / /* *主函数主函数* */ / int a,b,s; int a,b,s; / /* *定义定义a a,b b,s s三个整型变量三个整型变量* */ / printf(a,b=?); prin
20、tf(a,b=?); scanf(%d,%d,&a,&b); / scanf(%d,%d,&a,&b); /* *读入两个整数,存入变量读入两个整数,存入变量a a和和b b中中* */ / s=a+b; s=a+b; / /* *计算计算a a、b b两数据之和两数据之和s s的值的值* */ / printf(s=%dn,s); printf(s=%dn,s); / /* *输出和输出和s s的值的值* */ / 2021/8/619第第3章章 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例例例3.8 3.8 求一个同学三门功课的平均成绩。求一个
21、同学三门功课的平均成绩。开始开始输入输入a,b,c计算计算v输出输出v结束结束分析:分析:已知:已知:一个同学三门功课的成绩(用三一个同学三门功课的成绩(用三个变量个变量a a,b b,c c来存放)来存放) 求:求:该同学的平均成绩(用一个变量该同学的平均成绩(用一个变量v v来来存放)存放)处理:处理:用赋值表达式用赋值表达式 v=(a+b+c)/3.0v=(a+b+c)/3.0来来计算计算v v的值。的值。算法用如图所示的流程图表示:算法用如图所示的流程图表示:2021/8/620第第3章章 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例例例3.8 3.8 求一个同学三门功课
22、的平均成绩。求一个同学三门功课的平均成绩。开始开始输入输入a,b,c计算计算v输出输出v结束结束程序:程序:#include#includemain() main() int a,b,c; int a,b,c; float v; float v; printf(a,b,c=?); printf(a,b,c=?); scanf(%d,%d,%d,&a,&b,&c); scanf(%d,%d,%d,&a,&b,&c); v=(a+b+c)/3.0; v=(a+b+c)/3.0; printf(v=%fn,v); printf(v=%fn,v); 20
23、21/8/621第第3章章 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例开始开始输入输入c计算计算c输出输出c结束结束例例3.9 3.9 将键盘上输入的大写字母转换成小将键盘上输入的大写字母转换成小写字母输出。写字母输出。分析:分析:已知:已知:键盘上输入的大写字母(用一个变量键盘上输入的大写字母(用一个变量c c来存放)来存放)求:求:对应的小写字母(仍用变量对应的小写字母(仍用变量c c来存放)来存放)处理:处理:用赋值表达式用赋值表达式 c=c+32c=c+32来求小写字母。来求小写字母。算法用如图所示的流程图表示:算法用如图所示的流程图表示:2021/8/622第第3章章
24、 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例开始开始输入输入c计算计算c输出输出c结束结束例例3.9 3.9 将键盘上输入的大写字母转换成小将键盘上输入的大写字母转换成小写字母输出。写字母输出。程序:程序:#include#includemain() main() char c; char c; printf(c=?); printf(c=?); scanf(%c,&c); scanf(%c,&c); / /* *或或c=getchar();c=getchar();* */ / c=c+32; c=c+32; printf(c=%cn,c); printf(c=
25、%cn,c); / /* *或或putchar(c);putchar(c);* */ / 2021/8/623第第3章章 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例开始开始输入输入a,b交换交换a,b输出输出a,b结束结束例例3.10 3.10 从键盘上输入两变量的值,再交换从键盘上输入两变量的值,再交换两变量的值输出。两变量的值输出。分析:分析:已知:已知:从键盘上输入的两变量的原始值(用两从键盘上输入的两变量的原始值(用两个变量个变量a a和和b b来存放)来存放) 求:求:交换两变量的值(仍用变量交换两变量的值(仍用变量a a和和b b来存放)来存放)处理:处理:(1 1
26、)要借助一个中间变量来实现(设)要借助一个中间变量来实现(设为为t t)。)。 (2 2)用逗号表达式)用逗号表达式t=at=a,a=ba=b,b=tb=t来交来交换换a a,b b两变量的值。两变量的值。算法用如图所示的流程图表示算法用如图所示的流程图表示: :2021/8/624第第3章章 顺序结构程序设计顺序结构程序设计 3.4 应用举例应用举例开始开始输入输入a,b交换交换a,b输出输出a,b结束结束例例3.10 3.10 从键盘上输入两变量的值,再交换从键盘上输入两变量的值,再交换两变量的值输出。两变量的值输出。程序:程序:#include#includemain() main()
27、int a,b,t; int a,b,t; printf(a=?); printf(a=?); scanf(%d,&a); scanf(%d,&a); printf(b=?); printf(b=?); scanf(%d,&b); scanf(%d,&b); t=a,a=b,b=t; t=a,a=b,b=t; printf(a=%d,b=%dn,a,b); printf(a=%d,b=%dn,a,b); 2021/8/625第第3章章 顺序结构程序设计顺序结构程序设计 3.5 本章考点本章考点scanfscanf函数的输入格式。函数的输入格式。printfpri
28、ntf函数的输出格式。函数的输出格式。注释的书写格式。注释的书写格式。2021/8/626第第3章章 顺序结构程序设计顺序结构程序设计 3.6 典型试题详解典型试题详解1 1有定义语句:有定义语句:int x,y;int x,y;,若要通过若要通过scanf(%d,%d,&x,&y);scanf(%d,%d,&x,&y);语句使变量语句使变量x x得到数值得到数值1111,变量,变量y y得得到数值到数值1212,下面四组输入形式中错误的是,下面四组输入形式中错误的是_。A A)11 1211 12 B B)1111,1212 C C)11,1211,12 D
29、D)11,11, 12 12 正确答案:正确答案:A A(知识点:(知识点:scanfscanf函数的输入格式)函数的输入格式)试题分析:试题分析:scanf(%d,%d,&x,&y);scanf(%d,%d,&x,&y);语句中格式控制语句中格式控制“%d,%d”%d,%d”的两格式说明符之间使用了普通字符的两格式说明符之间使用了普通字符“,”,”,需要原样输入。,需要原样输入。2021/8/627第第3章章 顺序结构程序设计顺序结构程序设计 3.6 典型试题详解典型试题详解2 2有以下程序段:有以下程序段:int m=0,n=0;char c=a;int m
30、=0,n=0;char c=a;scanf(%d%c%d,&m,&c,&n);scanf(%d%c%d,&m,&c,&n);printf(%d,%c,%dn,m,c,n);printf(%d,%c,%dn,m,c,n);若从键盘上输入:若从键盘上输入:10A10 10A10 ,则输出结果是,则输出结果是_。A A)10,A,1010,A,10 B B)16,a,1016,a,10C C)10,a,010,a,0 D D)10,A,010,A,0正确答案:正确答案:A A(知识点:(知识点:scanfscanf函数的输入格式)函数的输入格式)试题分
31、析:试题分析:当当%c%c处在处在%d %d 之后时,输入数据间不能用分隔符,之后时,输入数据间不能用分隔符,所以所以m m、c c、n n经经scanf(%d%c%d,&m,&c,&n)scanf(%d%c%d,&m,&c,&n)重新输入值后,重新输入值后,分别为分别为1010、A A、1010。2021/8/628第第3章章 顺序结构程序设计顺序结构程序设计 3.6 典型试题详解典型试题详解3 3以下程序的运行结果是以下程序的运行结果是_。A A)17,021,0 x1117,021,0 x11B B)17,17,1717,17,17C C)17,0 x11,02117,0 x11,021D D)17,21,1117,21,11main()main() int k=17; in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商业零售店租赁经营合同协议
- 酒店管理与服务合同协议书
- 广东自考考试试卷及答案
- 2025年新疆特色果树制种合同
- 2025年新材料研发行纪合同协议书
- 2025年轨道交通信号工(高级技师)资格考试题库(带答案)
- 2025年广西专业技术人员继续教育公需科目科目考试及答案
- 护理部礼仪考试题及答案
- 客户服务响应流程优化管理工具
- 入团笔试题型及答案大全
- 财务部安全生产培训报告课件
- 公司兼职人员劳务合同4篇
- 制造过程质量追溯系统设计
- 2025年能源行业新能源产业风险管理可行性研究报告
- 会计毕业论文烟草专业
- 数字文旅概论 课件全套 第1-9章 数字文旅内涵与发展背景 - 数字营销
- 井盖安全常识培训课件
- 年产5万吨电熔锆刚玉新材料扩建项目环境影响报告表
- 2025社会工作员考试(社会工作基础知识)综合能力测试题及答案
- 卫生院支委会补选书记会议记录范文
- 酸洗作业安全知识培训
评论
0/150
提交评论