c程序设计初步实用.pptx

上传人:莉*** 文档编号:87529695 上传时间:2023-04-16 格式:PPTX 页数:58 大小:687.01KB
返回 下载 相关 举报
c程序设计初步实用.pptx_第1页
第1页 / 共58页
c程序设计初步实用.pptx_第2页
第2页 / 共58页
点击查看更多>>
资源描述

《c程序设计初步实用.pptx》由会员分享,可在线阅读,更多相关《c程序设计初步实用.pptx(58页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、本讲内容2.4.2 输入输出的复杂格式控制2.4.3 字符/字符串数据的输入和输出2.5 C语句概述第1页/共58页2.4.2 输入输出的复杂格式控制1.输出的复杂格式控制 printf函数调用形式:功能1:按原样输出字符串。printf(“字符串”);功能2:按格式说明符输出对应的数据项。printf(%格式说明符,输出项列表);printf(a=%d,b=%fn,a,b)第2页/共58页int a=1;float b=2;printf(a=%d,b=%fn,a,b)变量a对应格式符为%d变量b对应格式符为%f非格式符原样输出,n是转义字符格式控制字符串输出数据列表1.1.输出的复杂格式控制

2、输出的复杂格式控制 第3页/共58页常用的printf格式符第4页/共58页例例例例 整型整型数据的输出数据的输出#include stdio.h void main()int a=15,b=-20;long c=45;printf(1:%d%o%x%u n,a,a,a,a);printf(2:%d%dn,a,b);printf(3:%d%ldn,a,c);程序运行结果为:程序运行结果为:1.1.输出的复杂格式控制输出的复杂格式控制 第5页/共58页例例printf(%dn%un%x,%X,%o n,10,10,10,10,10);printf(%dn%un%x,%X,%o n,-1,-1,-

3、1,-1,-1);1 01 0a,A,1 21.1.输出的复杂格式控制输出的复杂格式控制 第6页/共58页数据在计算机中的存储-补码补码的最高位为符号位 正数最高位为0,负数最高位为1正数的补码就是它本身例如:1的补码(若为短整型,2个字节)0000 0000 0000 0001负数的补码例如:-1的补码(若为短整型,2个字节)先求它的绝对值为1 0000 0000 0000 0001按位取反 1111 1111 1111 1110最低位加1-1的补码是 1111 1111 1111 1111第7页/共58页例例 负数的输出负数的输出printf(%dn%un%x,%X,%o n,-1,-1,

4、-1,-1,-1);-1的补码是:1111 1111 1111 1111-165 5 3 5f f f f,F F F F,1 77 7 7 71.1.输出的复杂格式控制输出的复杂格式控制 第8页/共58页例例例例 整型和字符型整型和字符型的输出的输出#include stdio.h void main()int a=97,b=98;printf(1:%d%dn,a,b);printf(2:%d,%dn,a,b);printf(3:%c,%cn,a,b);printf(4:a=%d,b=%d,a,b);程序运行结果为:程序运行结果为:1.1.输出的复杂格式控制输出的复杂格式控制 第9页/共58

5、页例例例例 实型实型数据的输出数据的输出#include stdio.h void main()float a=1.2,b=-12.3456789;double c=12.58;printf(1:%f%f%lfn,a,b,c);printf(2:%e%e n,a,b);程序运行结果为:程序运行结果为:1.1.输出的复杂格式控制输出的复杂格式控制 第10页/共58页常用的printf 的附加格式说明 第11页/共58页例例 指定指定数值型输出域宽数值型输出域宽printf(%dn,100);printf(%5dn,100););printf(%8dn%8d,100,100*100);000010

6、0100001001001001printf(%-5dn,100););1.1.输出的复杂格式控制输出的复杂格式控制 第12页/共58页char c=A ;printf(%4c,%c%dn,c,c,c);56A,A 例例 指定指定字符型输出域宽字符型输出域宽1.1.输出的复杂格式控制输出的复杂格式控制 第13页/共58页printf(%fn%10.3fn%6.3fn,a,a,a);1 0 0.7 6 5 4 0 41 0 0.7 6 51 0 0.7 6 5float a=100.7654;例例 指定指定指定指定精度精度 宽度不够,宽度不够,整数部分原整数部分原样输出。样输出。1.1.输出的复

7、杂格式控制输出的复杂格式控制 第14页/共58页【学生项目案例【学生项目案例2-12-1】某学生在】某学生在“学生信息管理系统学生信息管理系统”中查询学生信息,系统需要显示学生的学号、姓中查询学生信息,系统需要显示学生的学号、姓名、性别和课程的成绩等信息。阅读下面程序,理名、性别和课程的成绩等信息。阅读下面程序,理解不同类型数据的输出方式。解不同类型数据的输出方式。#include void main()char*pnum=20080901,*pname=汪涵;/*指针可以指向字符串常量*/char x=f;int kc1=70,kc2=82;printf(%s,%s,%c,%d,%dn,pn

8、um,pname,x,kc1,kc2);第15页/共58页printf(%d,90);printf(%d,90);0000100109%d%例例 特殊字符特殊字符%1.1.输出的复杂格式控制输出的复杂格式控制 第16页/共58页例#include main()int a=1,b=2,c=3;printf(%d,%dn,a,b,c);如果输出项个数多于格式字符个数,多余数据部分不输出。1.1.输出的复杂格式控制输出的复杂格式控制 第17页/共58页例例例例#include stdio.hvoid main()int a=3,b=4;printf(%dn,a=b,b,a+3);printf(“%d

9、n,a,b,a=b);printf(%dn,(a=b,b,a+3);从右向左计算从左向右输出1.1.输出的复杂格式控制输出的复杂格式控制 第18页/共58页【例【例】阅读程序,体会阅读程序,体会scanf()scanf()函数的使用。函数的使用。#include stdio.hvoid main(void)char ch;printf(请从键盘上输入请从键盘上输入Y(同意同意)或或N(反对反对):n);/*提示提示信息信息*/scanf(%c,&ch);/*从键盘上输入从键盘上输入Y或或N字符字符*/printf(您所选择的是您所选择的是:%cn,ch);/*在屏幕上显示用户的在屏幕上显示用户

10、的选择选择*/第19页/共58页scanf函数调用的简单形式有:(1)scanf(%格式说明符,&简单变量名);(2)scanf(“%格式说明符”,指针变量);功能:按照“格式控制字符串”的格式要求,用户从标准输入设备(一般是键盘)键入一(或多)个数据,回车键结束后,将输入数据依次保存到地址列表指定的对应内存变量中。2.2.输入的复杂格式控制输入的复杂格式控制 注意:注意:l“输入项地址列表输入项地址列表”中的数据和中的数据和“格式说明符格式说明符”应该在应该在类型、个数、位置上一致。类型、个数、位置上一致。l输入格式控制字符串中不能出现转义字符。输入格式控制字符串中不能出现转义字符。如:如:

11、scanf(%d,%dn,&a,&b);scanf(%d,%dn,&a,&b);第20页/共58页第21页/共58页例例例例 整型数据的输入#include stdio.h void main()int a,b,c;scanf(%d%o%x,&a,&b,&c);printf(%d,%d,%d,a,b,c);程序中出现八进制数程序中出现八进制数的表示方法:的表示方法:X=012X=0122.2.输入的复杂格式控制输入的复杂格式控制 输入输出数值型数据间用空格、跳格(数值型数据间用空格、跳格(TABTAB键)键)或回车分隔或回车分隔第22页/共58页例例例例 整型数据的输入 scanf(%d,%d

12、,%d,&a,&b,&c);scanf(i=%d,&i);printf(i=%d,i);03=i3=i 321 3,2,1错错0 0 输入输入输出输出2.2.输入的复杂格式控制输入的复杂格式控制 普通字符原样输普通字符原样输入入第23页/共58页 scanf(%c%c%c,&a,&b,&c);scanf(%d%d%d,&a,&b,&c);scanf(%d%d%c,&m,&n,&ch);c de c c e123 1 2 3 1,2,3 12 a错错错错例例字符型数据的输入2.2.输入的复杂格式控制输入的复杂格式控制 字符数据间不需字符数据间不需要用分隔符要用分隔符第24页/共58页例例例例 实

13、型数据的输入void main()float a;double b;scanf(%e%lf,&a,&b);printf(%fn%lfn,a,b);2.2.输入的复杂格式控制输入的复杂格式控制 输入输出第25页/共58页 scanf(%3d,&a);scanf(%4d%4d,&a,&b);scanf(%4f,&c);scanf(“%6.2f”,&c);不能控制精度不能控制精度错错 7654.1 87654321 76521 321 54321a=123a=1 a=125a=1234 b=5678C=1.450000例例 指定指定精度2.2.输入的复杂格式控制输入的复杂格式控制 第26页/共58页

14、 数值数据输入时:遇空格、跳格(TAB键)或回车结束;遇非数值字符结束;遇宽度结束;遇非法输入结束。字符型数据输入时:可以接收空格、跳格(TAB键)或回车。如:int a,b,d;char c;scanf(%d%d%c%3d,&a,&b,&c,&d);输入序列为:1011A12345(表示空格)则,a=10,b=11,c=,d=1232.2.输入的复杂格式控制输入的复杂格式控制 第27页/共58页例例例例 main()int a,b;scanf(a=%d,b=%d,&a,&b);printf(a=%d,b=%dn,a,b);a=7,b=8a=7,b=8 a=7,b=8a=7,b=8 尽量不要将

15、格式控制字符串尽量不要将格式控制字符串指定得太复杂,用户看不到,会指定得太复杂,用户看不到,会增加不必要得难度和错误。增加不必要得难度和错误。2.2.输入的复杂格式控制输入的复杂格式控制 第28页/共58页例例例例 main()int a,b;printf(input a,b:);/*/*提示信息提示信息*/scanf(%d%d,&a,&b);printf(a=%d,b=%dn,a,b);input a,b:7input a,b:7 88a=7,b=8a=7,b=8 加入必要的提示信息,加入必要的提示信息,降低了用户输入的难度。降低了用户输入的难度。2.2.输入的复杂格式控制输入的复杂格式控制

16、 第29页/共58页 在键盘上输入:5.3,123,456,1.23456#include void main()int b;float c;double a;scanf(%f,%d,%*d,%5f,&a,&b,&c);printf(%e,%d,%f,a,b,c);pa值不正确。值不正确。a是是double型,输入时须用型,输入时须用%lf或或%le;p%*d对应的数据是对应的数据是456,附加格式符,附加格式符“*”允许对应允许对应的输入数据被忽略,因此的输入数据被忽略,因此456未赋给未赋给c变量;变量;p1.23456按按%5f格式截取格式截取1.234赋给赋给c,输出,输出1.2340

17、00。修改为%lf【例例】第30页/共58页2.4.3 字符字符/字符串字符串数据的输入和输出输入和输出一个字符:getchar和putchar函数输入和输出一个字符串:gets和puts函数第31页/共58页功能:从标准输入设备(键盘)接收一个字符,该字符作为getchar函数的返回值。输入字符后,按回车键,输入的字符才有效。如:ch=getchar();/*输入a*/ch=getchar()+10;说明:getchar()是无参函数,原型包含stdio.h头文件中。1.字符输入函数字符输入函数getchar()第32页/共58页#include void main()char a,b;a=

18、getchar();b=getchar();printf(a=%c,b=%cn,a,b);【例例】阅读并分析程序。体会键盘字符输入。阅读并分析程序。体会键盘字符输入。getchar();1.字符输入函数getchar()v从键盘输入:q w v从键盘输入:qw 第33页/共58页 getchar函数将输入的英文字母、标点符号和数字都作为字符输入。回车会作为一个字符读入。如果程序中有两个或两个以上getchar函数时,应该一次输入所有字符,最后再按回车键。或用getchar函数消耗掉多余的回车。1.字符输入函数getchar第34页/共58页#include void main()char a,

19、b;a=getchar();b=getchar();printf(a=%c,b=%cn,a,b);【例例】阅读并分析程序。体会键盘字符输入。阅读并分析程序。体会键盘字符输入。getchar();1.字符输入函数getchar()getchar();第35页/共58页#include void main()char a,b;scanf(%c%c,&a,&b);printf(a=%c,b=%cn,a,b);【例例】阅读并分析程序。体会键盘字符输入。阅读并分析程序。体会键盘字符输入。1.字符输入函数getchar()第36页/共58页功能:向输出设备(一般为显示器)输出一个字符,返回该字符的ASCI

20、I码值。调用一般形式为:putchar(c);参数c可以是字符型常量、字符型变量、字符型表达式、整型常量、整型变量、整型表达式等。包含在stdio.h。2.字符输出函数putchar()第37页/共58页#include “stdio.h”ABBCABBCmain()int x=65;char y=B;putchar(x);putchar(65+1);putchar(y);putchar(B+1);2.字符输出函数字符输出函数putchar()第38页/共58页分析:对应大小写字母的ASCII码值之差为32,利用这一特点实现大小写字母的转换。【文本项目案例文本项目案例2-12-1】文字处理软件

21、有许多基本功能,如文字处理软件有许多基本功能,如更改字母大小写、字符统计等。编程实现将小写字母转换更改字母大小写、字符统计等。编程实现将小写字母转换成大写字母。成大写字母。#include stdio.hvoid main()char ch1,ch2;printf(“请输入第一个小写字母:n”);ch1=getchar();getchar();printf(“请输入第二个小写字母:n”);ch2=getchar();getchar();ch1=ch1-32,ch2=ch2-32;/*转换*/putchar(ch1);putchar(ch2);第39页/共58页#include void mai

22、n()char ch;ch=getchar();putchar(ch);#include void main()char ch;scanf(“%c”,&ch);printf(“%c”,ch);字符型数据的输入输出字符型数据的输入输出第40页/共58页功能:接收用户从键盘输入的一个字符串,输入的字符串以回车结束。一般调用形式:gets(str_adr)说明:参数str_adr表示存放输入的字符串的首地址。char a10;/*定义字符数组a*/gets(a);3.字符字符串串输入函数输入函数gets()第41页/共58页区别:gets(a);gets函数接收包含空格在内的字符串,末尾的回车换行符

23、读入后不作为字符串的内容,系统将自动用结束符“0”代替。scanf(%s,a);scanf函数的“%s”格式输入字符串时,如果输入的字符串中包含空格,系统只接收空格之前的字符。3.字符串输入函数字符串输入函数gets()第42页/共58页函数的调用形式为:puts(str_adr)功能:输出以str_adr地址为起始地址的字符串。直至遇到第一个“0”时为止,并将其自动转换成一个换行符。puts(a);4.字符串输出函数字符串输出函数puts()第43页/共58页#include stdio.hvoid main(void)char a100;puts(请输入一个字符串(可以包含空格):);ge

24、ts(a);printf(你所输入的字符串是:);puts(a);printf(请输入一个字符串(不包含空格):);scanf(%s,a);puts(你所输入的字符串是:);printf(%s,a);【例例】阅读程序,理解字符串输入输出函数的使用阅读程序,理解字符串输入输出函数的使用第44页/共58页总结变量获取数据的几种方法:1.赋初值int x=1;2.赋值语句K=123;3.输入函数scanf(“%d”,&x);x=getchar();gets(x);第45页/共58页2.5 C语句概述一、简单语句一、简单语句二、复合语句二、复合语句三、空语句三、空语句四、流程控制语句(后续章节)四、流

25、程控制语句(后续章节)第46页/共58页语句种类语句种类语句的大概格式语句的大概格式说明说明控制语句控制语句if()else条件语句条件语句for()循环语句循环语句while()dowhile()continue结束本次循环结束本次循环break终止终止switch语句或循环语句或循环switch多分支选择语句多分支选择语句goto转向语句转向语句return从函数中返回语句从函数中返回语句函数调用语句函数调用语句函数名函数名(参数列表参数列表);如如printf(“C statement.”)表达式语句表达式语句表达式表达式;i+;空语句空语句;复合语句复合语句简单语句第47页/共58页一

26、、简单语句1.表达式语句 2.函数调用语句第48页/共58页1.1.表达式语句 任何C语言表达式加上分号“;”构成表达式语句。一般形式为:表达式;功能:执行表达式语句即计算表达式的值。表达式语句分类:(1)赋值语句 a=1;(2)运算符表达式语句 a+;第49页/共58页通过使用函数名和实际参数来调用执行函数体称为函数调用。函数调用语句的一般形式为:函数名(实际参数列表);功能:把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句。例如,printf(“学号”);/*不使用函数值*/y=x+sin(a);/*使用函数值*/c=getchar();/*使用函数值*/2.函数调用(Cal

27、ling)及函数调用语句第50页/共58页 C语言提供了大量的标准库函数供用户使用。调用各种库函数时,在程序首部用#include预处理命令包含函数所在的库文件。在程序中调用数学函数必须包含数学头文件:#include 常用的数学函数有:初等数学函数、三角函数、双曲线函数等。如,fabs(x),sqrt(x),pow(x,y)等。2.函数调用(Calling)及函数调用语句第51页/共58页概念:用一对花括号“”将多条语句括起来,完成一定的功能或计算,称为复合语句。复合语句的一般格式:数据说明部分;/*放在程序块首部*/执行语句部分;说明:表示此部分是可选项,可有或没有。复合语句语法上相当于一

28、条语句。复合语句中的每条语句都必须以“;”结束。但在最后的“”后不使用分号“;”。二、复合语句第52页/共58页如,两变量交换是一个完整的功能程序模块,可用复合语句表示为:int a,b,t;a=3,b=5;t=a;a=b;b=t;二、复合语句或为:或为:int a,b;a=3,b=5;int t;/*复合语句中的说明语复合语句中的说明语句句*/t=a;a=b;b=t;第53页/共58页【例例】阅读下面程序,理解复合语句中变量标识符的阅读下面程序,理解复合语句中变量标识符的作用域(即标识符的有效代码区域)。并分析程序结作用域(即标识符的有效代码区域)。并分析程序结果。果。#include vo

29、id main()int a=10,x=3;/*声明语句声明语句*/int a=20,y=2;/*声明语句声明语句*/int a=30;/*声明语句声明语句*/printf(%d,%d,%dn,a,y,x);/*输出输出30,2,3*/printf(%d,%d,%dn,a,y,x);/*输出输出20,2,3*/printf(%d,%dn,a,x);/*输出输出10,3*/第54页/共58页 最简单的语句仅一个分号(;),即空语句。空语句占一个语句位置,什么也不做。有时会影响程序的控制流程。用法:语法上必须要有语句,而实际情况又要求某位置上什么也不做,可以放置空语句解决问题。常用空语句进行程序的调试。三、空语句第55页/共58页本讲小结2.4.2 输入输出的复杂格式控制2.4.3 字符/字符串数据的输入和输出2.5 C语句概述第56页/共58页The Endthanks第57页/共58页感谢您的欣赏!第58页/共58页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁