




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,第3章顺序结构程序设计,3.1赋值语句,赋值语句是由赋值表达式再加上分号构成的表达式语句。赋值语句的一般形式为:变量=表达式;赋值语句的功能和特点都与赋值表达式相同。,.,第3章顺序结构程序设计,3.2输入输出函数,语言要求在使用输入/输出库函数之前必须包含stdio.h文件。包含形式如下:#include或#includestdio.h,.,第3章顺序结构程序设计,3.2输入输出函数,3.2.1字符数据输入输出函数,1字符数据输入函数,格式:getchar()功能:从键盘上接收输入的一个字符。例3.1从键盘输入一个字符,并将其存入字符型变量c中。#includestdio.hmain()charc;c=getchar();其中c是字符型(char)或整型(int)变量。,.,第3章顺序结构程序设计,3.2输入输出函数,3.2.1字符数据输入输出函数,1字符数据输入函数,2字符数据输出函数,格式:putchar(c)功能:向终端输出一个字符。说明:(1)c可以是字符型,也可以是整型。(2)c可以是变量,可以是常量,也可以是表达式。,.,第3章顺序结构程序设计,3.2输入输出函数,3.2.1字符数据输入输出函数,1字符数据输入函数,2字符数据输出函数,例3.2从键盘输入一个字符,在屏幕上显示出来。#includestdio.hmain()charc;c=getchar();/*从键盘输入一个字符*/putchar(c);/*在屏幕上显示一个字符*/,.,第3章顺序结构程序设计,3.2输入输出函数,3.2.2格式化输入输出函数,1格式化输出函数,格式:printf(格式控制,输出项表);功能:将“输出项表”中给出的输出项按“格式控制”中规定的输出格式输出到标准输出设备。说明:(1)输出项表中以逗号分隔列出需要输出的项(变量、常量、或表达式)。(2)格式控制是用双引号括起来的字符串,包括普通字符和格式说明。普通字符:是需要原样输出的字符(包括转义字符)。格式说明:由“%“和格式符组成,如%c和%f等,作用是将要输出的数据转换为指定格式后输出。,.,printf函数中使用的格式字符如表所示。,.,例3.3#includemain()inta=123;longb=135790;printf(a=%dn,a);printf(a=%4dn,a);printf(a=%2dn,a);printf(b=%ld,b);屏幕显示结果:a=123a=123a=123b=135790,.,例3.4#includemain()inta=-1;charc=a;printf(%d,%o,%x,%un,a,a,a,a);printf(%d,%cn,c,c);屏幕显示结果:-1,177777,ffff,6553597,a,.,例3.5#includestdio.hmain()printf(%s,%7.2sn,CHINA,CHINA);printf(%.4s,%-5.3sn,CHINA,CHINA);屏幕显示结果:CHINA,-CHCHIN,CHI-(注:-表示空格。),.,例3.6#includemain()floata=1.23;printf(%f,%7.2f,%2.1fn,a,a,a);屏幕显示结果:1.230000,-1.23,1.2,.,第3章顺序结构程序设计,3.2输入输出函数,3.2.2格式化输入输出函数,1格式化输出函数,2格式化输入函数,格式:scanf(格式控制,地址表);功能:用来输入任何类型数据,可同时输入多个不同类型的数据。说明:(1)地址表中每项以逗号分隔,列出需要输入的项(变量)的地址,而不是变量名。,.,(2)同printf函数一样,格式控制是用双引号括起来的字符串。包括普通字符和格式说明。普通字符:是需要原样输入的字符,一般不提倡使用。格式说明:由%和格式符组成,如%c和%f等,作用是规定按指定的格式输入数据。,scanf函数中使用的格式字符如表所示。,.,(3)scanf中“格式控制”中的格式字符必须与“格式控制”后的变量的类型匹配。例如:inta,b;chard;floatw;scanf(%d%o,(4)使用%c时,空格和转义字符均作为有效字符输入。例如:chara,b;scanf(%c%c,输入:xy结果:a=xb=,.,(5)如果格式说明符之间没有任何字符,则在输入非字符型数据时,两个数据之间要使用空格、Tab或回车键做间隔;如果格式说明符之间包含其他字符,则输入数据时,应输入与这些字符相同的字符做间隔。例如:scanf(%d,%f,%c,在输入数据时,应采用如下形式:20,7.8,a,.,(6)可以在格式说明符的前面指定输入数据所占的宽度,系统将自动按此宽度来截取所需的数据。例如:inta,b;chard,w;scanf(%d%d,输入:123423123456123a1结果:a=1234b=23a=123b=456a=123d=aw=1,.,第3章顺序结构程序设计,3.3注释,注释行的作用是增强程序的可读性。注释行的一般形式:/*注释内容*/其中,注释内容是对程序段或程序行的注释说明。注释行可以作为单独的一行出现在程序中,也可以出现在某个语句后,在编译时忽略。,.,第3章顺序结构程序设计,3.3注释,例3.7计算a、b两数据之和的C程序。#includemain()/*主函数*/inta,b,s;/*定义a,b,s三个整型变量*/printf(a,b=?);scanf(%d,%d,/*输出和s的值*/,.,第3章顺序结构程序设计,3.4应用举例,例3.8求一个同学三门功课的平均成绩。,分析:已知:一个同学三门功课的成绩(用三个变量a,b,c来存放)求:该同学的平均成绩(用一个变量v来存放)处理:用赋值表达式v=(a+b+c)/3.0来计算v的值。算法用如图所示的流程图表示:,.,第3章顺序结构程序设计,3.4应用举例,例3.8求一个同学三门功课的平均成绩。,程序:#includemain()inta,b,c;floatv;printf(a,b,c=?);scanf(%d,%d,%d,.,第3章顺序结构程序设计,3.4应用举例,例3.9将键盘上输入的大写字母转换成小写字母输出。,分析:已知:键盘上输入的大写字母(用一个变量c来存放)求:对应的小写字母(仍用变量c来存放)处理:用赋值表达式c=c+32来求小写字母。算法用如图所示的流程图表示:,.,第3章顺序结构程序设计,3.4应用举例,例3.9将键盘上输入的大写字母转换成小写字母输出。,程序:#includemain()charc;printf(c=?);scanf(%c,*/,.,第3章顺序结构程序设计,3.4应用举例,例3.10从键盘上输入两变量的值,再交换两变量的值输出。,分析:已知:从键盘上输入的两变量的原始值(用两个变量a和b来存放)求:交换两变量的值(仍用变量a和b来存放)处理:(1)要借助一个中间变量来实现(设为t)。(2)用逗号表达式t=a,a=b,b=t来交换a,b两变量的值。算法用如图所示的流程图表示:,.,第3章顺序结构程序设计,3.4应用举例,例3.10从键盘上输入两变量的值,再交换两变量的值输出。,程序:#includemain()inta,b,t;printf(a=?);scanf(%d,.,第3章顺序结构程序设计,3.5本章考点,scanf函数的输入格式。printf函数的输出格式。注释的书写格式。,.,第3章顺序结构程序设计,3.6典型试题详解,1有定义语句:intx,y;,若要通过scanf(%d,%d,语句中格式控制“%d,%d”的两格式说明符之间使用了普通字符“,”,需要原样输入。,.,第3章顺序结构程序设计,3.6典型试题详解,2有以下程序段:intm=0,n=0;charc=a;scanf(%d%c%d,若从键盘上输入:10A10,则输出结果是_。A)10,A,10B)16,a,10C)10,a,0D)10,A,0正确答案:A(知识点:scanf函数的输入格式)试题分析:当%c处在%d之后时,输入数据间不能用分隔符,所以m、c、n经scanf(%d%c%d,printf(%d,%o,%xn,k,k,k);正确答案:D(知识点:printf函数的输出格式)试题分析:将k的值17分别转换成八进制、转换十六进制输出。17对应的八进制数、十六进制数21、11,而表示八进制数、十六进制数为21、11的021、0 x11是在C程序中的表示方法,输出在屏幕上的数据是没有进制标志的。,.,第3章顺序结构程序设计,3.6典型试题详解,4以下程序段的输出结果是_。inta=1234;printf(%2dn,a);A)12B)34C)1234D)提示出错,无结果正确答案:C(知识点:printf函数的输出格式)试题分析:以%2d方式输出时,当指定宽度不够宽时,整型数据原样输出。,.,第3章顺序结构程序设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论