




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2019/11/19,1,第3章简单的C程序设计,2019/11/19,2,第3章简单的C程序设计,本章主要教学内容,C语句分类字符输入/输出函数格式输入/输出函数,2019/11/19,3,3.1C语句分类,变量声明语句intx,y;表达式语句i+;i=i+1;空语句;复合语句t=x;x=y;y=t;控制语句:9种,2019/11/19,4,3.2表达式语句,由表达式后接一个分号(;)即构成了表达式语句。,例如:a=9;printf(“%d”,a);,注意表达式语句与表达式在概念上的区别,c=a+bc=a+b;,表达式,表达式语句,2019/11/19,5,3.3复合语句和空语句的作用,在什么情况下使用复合语句?条件语句和循环语句在语法上只允许带一条语句当分支和循环中需要进行多项操作时,t=x;x=y;y=t;,被当作一条语句来处理,2019/11/19,6,main()inta=0;inta=1;printf(In:a=%dn,a);printf(Out:a=%dn,a);,In:a=1Out:a=0,例3.1,注意:复合语句中声明的变量只能在复合语句中使用。,2019/11/19,7,空语句,空语句有什么作用?什么也不做,只表示语句的存在自顶向下程序设计时用在那些未完成的模块中延时,main()DataInitialze();DataProcess();DataOutput();,DataInitialze();,2019/11/19,8,3.4基本输入/输出操作的实现,C语言没有提供专门的输入/输出语句;输入/输出操作通过调用标准库函数实现;使用时要加编译预处理命令。,#include,2019/11/19,9,字符输入/输出函数,字符输出函数putchar(ch)输出一个字符ch字符输入函数getchar()无参数函数值为从输入设备接收的字符,使用格式:变量=getchar();puchar(变量),2019/11/19,10,#includemain()charch;printf(PressakeyandthenpressEnter:);ch=getchar();printf(Youpressed);putchar(ch);putchar(n);,PressakeyandthenpressEnter:,A,Youpressed,A,例3.2(ex32),2019/11/19,11,3.4基本输入/输出操作的实现,#includemain()chara=B,b=o,c=k;putchar(a);putchar(b);putchar(b);putchar(c);putchar(t);putchar(a);putchar(b);putchar(n);putchar(b);putchar(c);,附例,2019/11/19,12,格式输入/输出,格式输出函数printf(“格式控制字符串”,输出项表列);输出若干个任意类型的数据printf(a=%db=%fn,a,b);,函数名,输出表列,普通字符,2019/11/19,13,3.4基本输入/输出操作的实现,printf()函数的说明,(1)格式控制字符用双引号括起来。,三种字符:,格式说明%+格式字符,转义字符+字符,普通字符原样输出的字符,(2)输出表列中各量用逗号分开,常量、变量、表达式均可。,2019/11/19,14,3.4基本输入/输出操作的实现,printf()格式转换说明符(P55),d以带符号十进制整数输出o以八进制无符号整数输出(无前导0)x以十六进制无符号整数输出(无前导0 x)u以十进制无符号整数输出c以字符形式输出单个字符s输出一个字符串f以小数形式输出浮点数(6位小数)e以标准指数形式输出(6位小数)g选用%f,%e中输出宽度较小的一种格式%显示%,2019/11/19,15,printf()附加格式修饰符(P57),3.4基本输入/输出操作的实现,l长整型整数,加在d、o、x、u前Llongdouble型数,加在f、e、g前m表示数据占用的最小宽度数据宽度大于m,按实际宽度输出数据宽度小于m时,补空格n对实数表示输出n位小数对字符串表示最多输出的字符个数-改变输出内容的对齐方式缺省为右对齐,2019/11/19,16,#includemain()floatf1=100.15799,f2=12.55,f3=1.7;intn1=123,n2=45,n3=6;printf(printfWITHOUTwidthorprecisionspecifications:n);printf(%fn%fn%fn,f1,f2,f3);printf(%dn%dn%dn,n1,n2,n3);printf(printfWITHwidthandprecisionspecifications:n);printf(%5.2fn%6.1fn%3.0fn,f1,f2,f3);printf(%5dn%6dn%3dnn,n1,n2,n3);,例3.8(P58),2019/11/19,17,3.4基本输入/输出操作的实现,1.设a=123,b=12345则:printf(%4d,%4d,a,b);,输出为:,_123,12345,附加例,2.设longa=135790;则printf(%ld,%d,a,a);,输出为:,135790,4718,3.设x=111111.123,y=222222.321,则,printf(%10.2f,%e,x+y,x+y);,输出为:,333333.45,3.33333e+05,4.printf(%f%,1.0/3);,输出为:,0.333333%,2019/11/19,18,格式输入函数scanf(格式控制字符串,地址表列);scanf(%d,%f”,格式输入/输出,3.4基本输入/输出操作的实现,2019/11/19,19,3.4基本输入/输出操作的实现,scanf()函数的格式转换说明符P57,d以带符号十进制形式输入整型数据o以八进制无符号形式输入(无前导0)x以十六进制无符号形式输入(无前导0 x)c以字符形式输入单个字符s输入字符串,以非空字符开始,遇第一个空白字符结束f以小数形式输入浮点数e以标准指数形式输入%输入一个百分号,2019/11/19,20,3.4基本输入/输出操作的实现,scanf()函数的格式修饰符P59,l加在d、o、x、u前:输入长整型加在f、e前:输入双精度型L加在f、e前:输入longdouble型h加在d、o、x前:输入短整型m表示数据占用的宽度*本输入项在读入后不赋给相应的变量,返回,2019/11/19,21,3.4基本输入/输出操作的实现,输入数据时,遇以下情况时该数据认为结束遇空格、回车、TAB键遇宽度:%3d遇非法输入,scanf()函数,2019/11/19,22,3.4基本输入/输出操作的实现,例3.9,#includemain()inta,b;printf(Pleaseinputaandb:);scanf(%2d%*2d%2d,Pleaseinputaandb:,a=12,b=56,a+b=68,123456,修饰符,2019/11/19,23,3.4基本输入/输出操作的实现,使用scanf()时需要注意的问题,(1)输入多个数值型数据时,若格式控制串中没有非格式字符,则可用空格、TAB键、回车键作为数据间的分隔符。,#includemain()inta,b;scanf(%d%d,1234,问题1:当要求程序输出结果为:a=12,b=34时,用户应该如何输入数据?,2019/11/19,24,3.4基本输入/输出操作的实现,(2)若格式控制串中有非格式字符,则输入时也要输入相同的字符。,使用scanf()时需要注意的问题,#includemain()inta,b;scanf(%d%d,问题2:当限定用户输入数据以逗号为分隔符,即输入数据格式为:12,34时,应修改程序中的哪条语句?怎样修改?,2019/11/19,25,使用scanf()时需要注意的问题,#includemain()inta,b;scanf(%d%d,问题3:语句scanf(%d%d,时,用户应该如何输入数据?,a=12,b=34,2019/11/19,26,使用scanf()时需要注意的问题,#includemain()inta,b;scanf(%d%d,问题4:限定用户输入数据为以下格式为1234同时要求程序输出结果为a=12,b=34,scanf(%2d%2d,2019/11/19,27,使用scanf()时需要注意的问题,#includemain()inta,b;scanf(%d%d,问题5:限定用户输入数据为以下格式为1234同时要求程序输出结果为a=12,b=34,scanf(%d%d,2019/11/19,28,使用scanf()时需要注意的问题,#includemain()inta,b;scanf(%d%d,scanf(%d%*c%d,问题6:设计程序使得用户可以以任意字符(回车、空格、制表符、逗号、其它)作为分隔符进行数据的输入,2019/11/19,29,#includemain()intdata1,data2;charop;printf(Pleaseentertheexpressiondata1+data2n);scanf(%d%c%d,Pleaseentertheexpressiondata1+data2,第1次测试,12_+_3,123129=3141,%c在应用中存在的问题及解决e3-11.c,2019/11/19,30,#includemain()intdata1,data2,sum;charop;printf(Pleaseentertheexpressiondata1+data2n);scanf(%d%c%d,%c在应用中存在的问题及解决,Pleaseentertheexpressiondata1+data2,第2次测试,123,123=15,2019/11/19,31,#includemain()intdata1,data2,sum;charop;printf(Pleaseentertheexpressiondata1+data2n);scanf(%d%c%d,Pleaseentertheexpressiondata1+data2,第3次测试,12+3,12+3=15,%c在应用中存在的问题及解决,2019/11/19,32,%c在应用中存在的问题及解决(e3-12.c),#includemain()inta;charb;floatc;printf(Pleaseinputaninteger:);scanf(%d,Pleaseinputaninteger:,结果好像很奇怪嘛!,12,Pleaseinputancharacter:,character,Pleaseinputafloatnumber:,3.5,integer:12,floatnumber:3.500000,2019/11/19,33,#includemain()inta;charb;floatc;printf(Pleaseinputaninteger:);scanf(%d,Pleaseinputaninteger:,程序修改后得到的运行结果,12,Pleaseinputancharacter:,a,Pleaseinputafloatnumber:,3.5,integer:12,character:a,floatnumber:3.500000,%c在应用中存在的问题及解决e3-12.c,2019/11/19,34,用%1s解决问题存在的隐患(ex12_1),#includemain()chara,b,c;printf(Pleaseinputc:);scanf(%1s,printf(“ASCII:c:%d,b:%d,a:%dn“,c,b,a),C=,b=,a=cASCII:c:0,b:0,c:99,结果:,Pleaseinputc:,a,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- IP授权合作开发协议
- 职业发展规划与职业路径规划模板
- 银行托管服务协议
- 销售合同标准化模版(含重要条款及流程)
- 防洪设施测绘协议
- 2026届新疆巴州焉耆县第三中学高二化学第一学期期末联考模拟试题含答案
- 医疗器械研发及售后服务责任保证合同
- 合作社运营资金借贷合同
- 硬件设施定位测量协议
- 企业风险评估与预防策略模板
- 医院综合门诊部综合管理体系建设
- GB/T 9869.2-2025橡胶用硫化仪测定硫化特性第2部分:圆盘振荡硫化仪
- 保密教育培训课件内容
- 陕西省专业技术人员继续教育2025公需课《党的二十届三中全会精神解读与高质量发展》20学时题库及答案
- 2024-2025学年人教版数学五年级下学期期末试卷(含答案)
- 课程设计与评价
- 霍尔电流传感器实训台课件
- 2023年国药控股股份有限公司招聘笔试题库及答案解析
- 应急中心组织架构
- 混凝土搅拌站实验室质量管理手册47590试卷教案
- 电气施工四措两案9.9
评论
0/150
提交评论