欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    专题2 输入输出函数及顺序结构.ppt

    • 资源ID:93177506       资源大小:231KB        全文页数:23页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    专题2 输入输出函数及顺序结构.ppt

    专题二 输入输出函数及顺序结构1 1、数据输入与输出数据输入与输出1.1 printf()1.1 printf()1.1 printf()1.1 printf()函数函数函数函数 printf函数的作用是向终端设备(或系统隐含指定的输出设备)上按指定格式进行输出数据。(一)一般形式为(一)一般形式为:printf(printf(格式控制串,输出项表格式控制串,输出项表););1 1、格式控制串、格式控制串 是用一对双引号(“”)引起的字符串。里面通常包含两种字符:(1)格式字符:以%开头,对输出项的输出格式进行说明。(2)普通字符:原样输出。2 2、输出项表、输出项表 输出项表可以是多个,如果是多个,输出项之间用逗号隔开。使用时,输出项可以使常量、变量或表达式等。例如:printf(“a=%d”,x);/设变量x已正确定义1 1、格式字符格式字符%c%c输出一个字符%d%d或%i输出带符号的十进制整型数%u%u输出无符号十进制整型数%s%s输出一串字符%f%f输出单精度数,%lf%lf输出双精度数据%o%o输出无符号八进数整型数%x%x输出无符号十六进制整型数%e%e以指数形式输出单精度实数,%le%le以指数形式输出双精度实数%p输出变量的地址%输出一个%二、使用说明二、使用说明2 2、使用时,、使用时,格式字符的类型与输出项的类型,必须一一对应格式字符的类型与输出项的类型,必须一一对应例1.main()int h=12;float a=56.5;printf(“%d,%f,%d”,h,a,h*a);以上输出项中,前两项格式与输出项类型是一致,最后一项格式%d跟最后一项输出项h*a(为实型)类型不一致,输出后得不到正确结果。(3)(3)格式字符的个数与输出项的个数应相同,如果格式字符的个数少于输出项的格式字符的个数与输出项的个数应相同,如果格式字符的个数少于输出项的个数,多余的输出项不会输出,如果说明项的个数多于输出项的个数,多余的个数,多余的输出项不会输出,如果说明项的个数多于输出项的个数,多余的格式输出不定值(或格式输出不定值(或0 0)例1.如有:int x=10,y=5;执行printf(“%d”,x,y);格式说明中只有一个%d,而输出项有x,y两项,因此则输出结果为:10,多余项y不输出。例2.如有:int x=10,y=5;执行printf(“%d,%d,%d”,x,y);格式说明中有三个%d,而输出项有x,y两项,因此则输出结果为:10,5,0023342其中0023342不定值。(4)(4)格式控制串中,除格式字符以外的其它字符原样输出格式控制串中,除格式字符以外的其它字符原样输出例1.main()int h=12;float a=5.5,c;printf(“a=%d,b=%f,c的值为:%f”,h,a,h*a);在以上格式控制串中,a=,b=,c的值为:不是格式说明符,属于其它字符,原样输出,运行后结果为:a=12,b=5.5,c的值为:66.0(5)(5)指定输出数据所占的宽度指定输出数据所占的宽度,默认右对齐默认右对齐(%md,%m.nf)(%md,%m.nf)/*未指定宽度按实际宽度输出*/printf(“%d”,425);425/*指定宽度为5,前面输出两个空格*/printf(“%5d”,425);_ _425/*指定宽度为2不够输出宽度,按实宽度输出*/printf(“%2d”,425);425/*未指定宽度按实际宽度输出(单精度实数默认为6有效位小数位)*/printf(“%f”,123.54)123.540000/*指定宽度不够输出宽度,按实际宽度输出*/printf(“%5f”,123.54)123.540000 /*指定宽度为12,前面输出2个空格*/printf(“%12f”,123.54)_ _123.540000/*指定总宽度为8,小数位为1位*/printf(“%8.1f”,123.54)_ _ _123.5 /*指定总宽度为8,小数位为3位*/printf(“%8.3f”,123.54)_123.540 /*指定总宽度为8,小数位为0位*/printf(“%8.0f”,123.54)_ _ _ _ _124(6)(6)可在宽度前加可在宽度前加-号来使输出数据左对齐号来使输出数据左对齐printf(“%6d#n”,123)_ _ _123#printf(“%-6d#n”,123)123_ _ _#printf(“%14.8f#n”,1.3455)_ _ _ _1.34550000#printf(“%-14.8f#n”,1.3455)1.34550000_ _ _ _#1.2 putchar()1.2 putchar()函数函数 putchar()函数的作用是向终端输出字符,一次只能输出一个字符,它的头文件为stdio.h。例例1.1.putchar(y);输出 y putchar(n);输出一个换行符 putchar(65);输出大写字母A putchar(10);输出一个换行符(注:n的ASCII值为10)1.3 1.3 puts()puts()函数函数 puts()的函数作用是向终端输出字符串,遇到第一个0结束,输出字符后自动换行,它的头文件为stdio.h。例例1.1.puts(“ASDG”);则输出ASDG char a120=”abcd0ef”则puts(a1)输出abcd练习题练习题1.以下叙述中正确的是A)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码2.int a=1234;printf(“%2dn”,a);则输出结果 A)12 B)34 C)1234 D)提示出错,无结果3.有x=6.7,y=9.5,z=3.3;则执行printf(“%f,%f”,x,y,z)则输出为:A)6.7,9.5,3.3 B)6.7 9.5 3.3 C)6.7,9.5 D)6.7 9.5BCC4.以下程序的的输出结果是:main()int k=17;printf(“%d,%o,%xn”,k,k,k);A.17,021,0 x11 B.17,17,17 C.17,0 x11,021 D.17,21,11D5.有以下程序,其中%u表示按无符号整数输出07年4月main()unsigned int x=0 xFFFF;/*x的初值为十六进制数*/printf(%un,x);程序运行后的输出结果是A)-1 B)65535 C)32767 D)0 xFFFFB6.已知字符A的ASCII代码值是65,字符变量c1的值是A,c2的值是D。执行语句printf(%d,%d,c1,c2-2);后,输出结果是07年9月A)A,B B)A,68 C)65,66 D)65,68C7.若整型变量a和b中的值分别为7和9,要求按以下格式输出a和b的值:08年9月a=7b=9请完成输出语句:printf(【7】,a,b);.a=%dnb=%d8.有以下程序段 08年4月char ch;int k;ch=a;k=12;printf(%c,%d,ch,ch,k);printf(k=%dn,k);已知字符a的ASCll十进制代码为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 D9.程序段:int x=12;double y=3.141593;printf(“%d%8.6f”,x,y);的输出结果是09年3月A)123.141593 B)12 3.141593 C)12,3.141593 D)123.1415930A10.若变量x,y已定义为int类型且x的值为99,y的值为9,请将输入语句printf(【7】,x/y);补充完整,使其输出的计算结果形式为:x/y=11.09年3月“x/y=%d”1.4 scanf()1.4 scanf()函数函数 scanf()函数的作用是向终端设备(或系统隐含指定的输入设备)上输入数据。一、一、scanfscanf函数的一般形式为函数的一般形式为:scanf(scanf(格式控制串,输入项表格式控制串,输入项表)1 1、格式控制串、格式控制串 理解同printf函数。里面有两种字符:(1)格式字符:同printf函数 (2)普通字符:输入时,一定要原样输入。2 2、输入项表、输入项表 输入项一定要是地址。如:scanf(“a=%d,b=%c”,&a,&b);(1)输入long整数时用%ld,输入double型时用%lf,否则取不到正确数据(2)格式说明的类型与输入项的类型,要一一对应.二、使用说明二、使用说明(3)输入项一定要是地址。如果是普通输入项一定要是地址。如果是普通变量,则一定要加地址符变量,则一定要加地址符&,&,如如scanf(scanf(“%d%d%d%d”,a,b),a,b)是错误的是错误的;如果已经是指针变量,则不需画蛇添足。如果已经是指针变量,则不需画蛇添足。例.若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是07年9月A)scanf(%d,a,b,c);B)scanf(%d%d%d,a,b,c);C)scanf(%d,p);D)scanf(%d,&p);C(4)格式字符前可以用一个整数指定输入数据所占宽度,但不可以对实型数指定小数位的宽度。如scanf(“%2d%2d”,&a,&b)是合法的,但scanf(“%5.3f,%5.2f”,&a,&b)是非法的。123456例.有以下程序段int j;float y;char name50;scanf(%2d%f%s,&j,&y,name);当执行上述程序段,从键盘上输入55566 7777abc 后,y的值为07年9月A)55566.0 B)566.0 C)7777.0 D)566777.0B例1.如有int a,b,c;scanf(“%d%d%d”,&a,&b,&c);要使a=5,b=6,c=8,它的输入格式可以有以下几种形式:(表示回车符)(1)5 6 8 (间格符为空格)(2)5(按Tab键)6(按Tab键)8回车 (间格符为Tab键)(3)5 6 8 (间格符为回车)(4)5 6 8 (间格符为空格与回车混合)(5)5 6 8 (间格符为空格与回车混合)(5)输入输入数值数据数值数据之间的间隔符可以是之间的间隔符可以是空格符、制表符空格符、制表符(Tab(Tab键键)、回车键、回车键(6)输入字符数据时,字符之间没有间隔符,即空格、回车、Tab按字符读入例1.对scanf(“%c%c%c”,&a,&b,&c);要使a=x,b=y,c=z则一定要输入则一定要输入:xyz:xyz 如输入如输入x y zx y z则则a=x,b=a=x,b=(空格空格),c=z),c=z 但要注意:但要注意:可以在格式控制串中加入空格、回车、Tab作间隔符,这时不能读入,如有scanf(“%c%c%c”,&a,&b,&c)则输入数据时可以输入xyz(之间没有空格)和x y z结果一样。(7)(7)在交叉输入字符与数值时,要注意输入格式(该点常考在交叉输入字符与数值时,要注意输入格式(该点常考)例例1 1.对scanf(“%d%c%d%c”,&a,&b,&c,&d)使a=10 b=Ac=10 d=B正确的输入形式为:10A10B或10A_10B(_代表空格)不能输入10_A_10_B,这样输入把10赋给a,空格赋给b,c遇到字母A,因类型不匹配,终止输入。(8)格式控制项中格式说明个数与输入项的个数要相同,若输入数据少于格式说明个数项,则等待输入,直满足为止。如scanf(“%d%d”,&a,&b);输入 10 后不再输入数据,程序不会执行下一语句,屏幕一直处于等待输入数据状态,直到输入的数据的个数与格式说明的个数相同时,才会结束等待输入状态。若输入数据多于要求可格式说明的个数,则多余的数据不不消失,存入缓存,留给下一个输入操作时的输入数据。如scanf(“%d%d”,&a,&b);输入 2 5 12后,则把2给a,5给b,12存入缓存。例.设变量均已正确定义,若要通过scanf(%d%c%d%c,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:代表空格字符)07年4月A)10X20Y B)10X20Y C)10X 20YD)10X 20YD(9)在格式控制串中插入了其它字符时,要得到正确的数据,则输入数据时要一一对应原样输入这些字符。例1.int a1,a2,a3;scanf(“input a1,a2:%d%d”,&a1,&a2)要使a1=3,a2=9,如输入3 9 则得不到正确结果,因为在输入函数格式控制串中插入了“input a1,a2:”字符串,它不是格式说明字符,一定要原样输入才会得到正确的结果,即:input a1,a2:3 9 例2.对scanf(“%d,%d,%d”,&a,&b,&c);要使a=10,b=5,c=6;则要输入:10,5,6 (即在格式控制串中插入了逗号)例3.对scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);要使a=10,b=5,c=6;则要输入:a=10,b=5,c=6 1.5.gets()1.5.gets()函数函数gets函数是向终端设备输入数据的函数,头文件为stdio.h。gets()读入字符串(包括空格),直到读入换行符为此,但换行符不作为字符串的内容,系统将自动用0代替。例例1 1 main()char str20;gets(str);如输入how are you?则str=”how are you?0”即即printf(printf(“%s%s”,str),str)输出结果为:how are you?但要注意但要注意:若把gets(str)换成scanf(“%s”,str);输入how are you则str=”how”,即,即printf(printf(“%s%s”,str),str)输出结果为:how因为在scanf函数中,对于%s格式,空格 回车分隔符不能读入。1.4.getchar()1.4.getchar()getchar函数是向终端设备输入数据的函数,头文件为stdio.h,getchar()函数一次只能读入一个字符,输入时空格、回车、Tab按字符读入。只有在按回车键后才起作用。例例1 1 y=getchar();输入abc回车 则y=a(即只能读入一个字符)例例2 2 main()char x,y,z;x=getchar();y=getchar();z=getchar();若输入:A_ (_表示空格,代表回车)则x=A,y=空格符z=回车符练习:练习:1.1.变量为float要通过语句scanf(“%f%f%f”,&a,&b,&c);使a=10.0,b=22.0,c=33.0,不正确的输入形式是A)10 B)10.0,22.0,33.0 22回车)33回车)C)10.0 D)10 22 22.0 33.0 332.2.有语句 scanf(“i=%d,j=%d”,&i,&j);使i=5,j=6,输入正确的为A)5,6 B)i=5,j=6 C)5 6 D)=5 j=63.执行以下程序时输入1234567,则输出结果是【6】。07年9月#includemain()int a=1,b;scanf(%2d%2d,&a,&b);printf(%d%dn,a,b);DB12 34(4)对程序:main()char str17:gets(printf(“%sn”,str);从键盘上输入:Windows XP 1.0(回车)则输出结果:A)Windows B)Windows XP 1.0 C)Windows XP D)输入错,不运行B5.若变量已正确定义为int型,要通过语句scanf(%d,%d,%d,&a,&b,&c);给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(代表一个空格符)08年9月A)1,2,3 B)123C)1,2,3 D)1,2,3B6.若有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是09年3月A)scanf(%f%f,x,y);B)scanf(%f%f&x,&y);C)scanf(%lf%le,px,py);D)scanf(%lf%lf,x,y);C7.有以下程序09年3月#incluemain()int a1,a2;char c1,c2;scanf(%d%c%d%c,&a1,&c1,&a2,&c2);printf(%d,%c,%d,%c,a1,c1,a2,c2);若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b 则正确的输入格式是(以下_代表空格,代表回车)(A)A)12a34b B)12_a_34_b C)12,a,34,b D)12_a34_bA2.1 2.1 复合语句和空语句复合语句和空语句1.1.复合语句复合语句 在C语言中,一对花括号“”是函数体的定界符,也可用作复合语句的开头和结尾的标志,复合语句也称“语句块”,其形式如下:语句1;语句2;语句3;.语句n;复合语句在语法上视为一条语句,在花括号内的语句数量不限,可以是一条语句,也可以是多条语句,当是一条语句时可省略花括号。例如:a=a+1;b+;c=a*b;printf(“%dn”,c);为复合语句。如03年9月11)以下叙述中正确的是A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号“”和“”只能作为函数体的定界符C)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分A2.2.空语句空语句C程序中的所有语句都必须由一个分号“;”作为结束。如果只有一个分号,如:main();这个分号也是一条语句,称为“空语句”,表示程序执行时不产生任何动作。例例 以下以下4 4个选项中,不能看作一条语句的是个选项中,不能看作一条语句的是A);B)a=0,b=0,c=0;C)if(a0);D)if(b=0)m=1;n=2;D2.以下程序的功能是:输出a、b、c三个变量中的最小值。请填空。07年9月#include main()int a,b,c,t1,t2;scanf(%d%d%d,&a,&b,&c);t1=ab?【7】;t2=ct1?【8】;printf(%dn,t2);a:bc:t1

    注意事项

    本文(专题2 输入输出函数及顺序结构.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

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

    收起
    展开