第3章-简单的C程序设计_第1页
第3章-简单的C程序设计_第2页
第3章-简单的C程序设计_第3页
第3章-简单的C程序设计_第4页
第3章-简单的C程序设计_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2345被当作一条被当作一条语句来处理语句来处理6In: a = 1Out: a = 078字符输入输出操作的实现字符输入输出操作的实现 在计算机终端键盘上输入数据。 在终端显示器上输出数据。 9 putcharputchar()必须带输出项,()必须带输出项,输出项可以是字符型常量、变量、输出项可以是字符型常量、变量、表达式,但只能是单个字符而不表达式,但只能是单个字符而不能是字符串。能是字符串。 10#include main() char a, b, c; a = B; b = O; c = Y; putchar( a ); putchar( b ); putchar( c ); put

2、char( n ); putchar( 101 ); putchar( ); putchar( x61 ); 程序的运行结果是 BOY Aa1112(1) (1) 程序执行时,执行到该函数将暂停程序的运程序执行时,执行到该函数将暂停程序的运行等待从键盘输入数据行等待从键盘输入数据(2 2)只有在按)只有在按“回车回车”键之后输入的字符才有效键之后输入的字符才有效. .(3)(3)此函数只接受一个字符,而非一串字符。字符可此函数只接受一个字符,而非一串字符。字符可以是回车、以是回车、tab tab 键等特殊字符;例中若输入键等特殊字符;例中若输入 abcdeabcde,该函数也只接受第一个字符该

3、函数也只接受第一个字符 a a。(4) getchar(4) getchar函数得到的字符可以赋给一个字符变量函数得到的字符可以赋给一个字符变量或整型变量,也可以不赋给任何变量而是作为表达或整型变量,也可以不赋给任何变量而是作为表达式的一部分。式的一部分。13#include stdio.hmain() char ch; printf(Please input two character: ); ch=getchar();/*输入输入1个字符并赋给个字符并赋给ch */ putchar(ch);putchar(n); putchar(getchar(); /*输入一个字符并输出输入一个字符并输

4、出*/ putchar(n);Please input two characters: ab a b14printf(a=%d b=%d, a, b);格式说明格式说明普通字符输出结果 a=3 b=4输出列表输出列表1516输出列表举例输出列表举例17格格式转换说式转换说明符明符相同的存储内容,不同类型其存储长度与格式不同相同的存储内容,不同类型其存储长度与格式不同对信息的解读不同。选择合适的数据类型!对信息的解读不同。选择合适的数据类型!18a=3; b=24; printf(%d%d,a,b); 324 a=123; b=12345; printf(%4d, %05d, %d, a, a,

5、 b);123, 00123, 1234519c格式符格式符 int c=65; printf(%c,%d,c,c); char c=a; printf(%c,%d,c,c); 20s格式符格式符21s格式符格式符22s格式符格式符23f格式符格式符 float x, y; x=111111.111; y=222222.222; printf(%f,x+y); 333333.3281251.系统自动指定数据宽度,整数部分全部输出,小数部分系统自动指定数据宽度,整数部分全部输出,小数部分输出输出6位。位。2.单精度数的有效位数为单精度数的有效位数为7位;双精度数用位;双精度数用%lf输出时,有效

6、位数为输出时,有效位数为16位,小数位为位,小数位为6位。位。24f格式符格式符float x; x=123.456; printf(%f,%10f,%10.2f,%.2f,x,x,x,x);25f格式符格式符26e格式符格式符27e格式符格式符28e格式符格式符293031printf函数使用说明函数使用说明32printf函数使用说明函数使用说明3.如输出字符如输出字符%,则在,则在“格式控制格式控制”字符字符串重用连续的两个串重用连续的两个%字符。字符。printf(%f%n, 1.0/3); 输出:输出:0.333333%4.可以在可以在“格式控制格式控制”字符串内包含字符串内包含“转

7、义字符转义字符”。例如:。例如:n,t,b,r,f等。等。printf(%d, %fn, a, f); 33转义字符转义字符转义字符转义字符功功 能能n换行换行(回车换行回车换行)t横向跳格横向跳格(跳向下一输出区跳向下一输出区)(8列)列)v竖向跳格竖向跳格b后退一格后退一格r回车回车(回本行第一列回本行第一列)f走纸换页走纸换页输出反斜杠字符输出反斜杠字符输出单引号字符输出单引号字符ddd(d为数据为数据)1到到3位位8进制数所代表的字符进制数所代表的字符xhh(x为数据为数据)1到到2位位16进制数所代表的字符进制数所代表的字符34printf函数举例1.a=29, a= 29, a=2

8、9 ,a=00292.a=35, a=0035, a=1d, a=0 x1d3.b=123456, b= 1234564.x=123.456001, x=123.46, x= 123.46, x=123.4635 printf(5.x=%e, x=%.2e, x=%gn, x, x, x); printf(6.%c%8s%cn, c, how are you, c); printf(7.%c%15s%cn, c, how are you, c); printf(8.%c%+10.3s%cn, c, how are you, c); printf(9.%c%-10.3s%cn, c, how a

9、re you, c);5.x=1.234560e+02, x=1.23e+02, x=123.4560016.:how are you:7.: how are you:8.: how:9.:how :36#include main()float f1 = 100.15799, f2 = 12.55, f3 = 1.7;int n1 = 123, n2 = 45, n3 = 6; printf(printf WITHOUT width or precision specifications:n);printf(%fn%fn%fn, f1, f2, f3);printf(%dn%dn%dn, n1

10、, n2, n3);printf(printf WITH width and precision specifications:n);printf(%5.2fn%6.1fn%3.0fn, f1, f2, f3);printf(%5dn%6dn%3dnn, n1, n2, n3);37格式输入函数格式输入函数scanf3839scanf的格式控制的格式控制40scanfscanf附加的格式说明字符附加的格式说明字符字字 符符说说 明明l用于输入长整形数据用于输入长整形数据(可用可用%ld、%lo、%lx),以及,以及double型数据型数据(用用%lf或或%le)h用于输入短整形数据用于输入短整

11、形数据(可用可用%hd、%ho、%hx)域宽域宽(为以正整数为以正整数) 指定输入数据所占宽度(列数)指定输入数据所占宽度(列数)*表示本输入项在读入后,不赋给相应的表示本输入项在读入后,不赋给相应的变量。变量。41d格式符格式符42d格式符格式符43c格式符格式符44c格式符格式符45f格式符格式符 结果:结果:a1=12.345 a2=123.456 a3=1234.567注:数据必须只能用至少一个空格分开。注:数据必须只能用至少一个空格分开。46f格式符格式符 47输入输出操作中常见的错误分析格式化输入输出的数据类型与所用格式说明格式化输入输出的数据类型与所用格式说明符不一致。符不一致。

12、float f=123.456;scanf(%d,&f);printf(%dn,f);48输入输出操作中常见的错误分析用用scanf函数输入数据时,变量前忘记使用地函数输入数据时,变量前忘记使用地址符址符&。int f; scanf(%d,f); 49输入输出操作中常见的错误分析用用scanf函数输入数据时,数据的输入形式与函数输入数据时,数据的输入形式与格式要求不符。格式要求不符。int a1, a2; scanf(%d, %d, &a1, &a2);input: 3 4 3, 4 scanf(%d %d, &a1, &a2);input: 3

13、 4 3, 4 50输入输出操作中常见的错误分析若想在屏幕上输出一行提示信息,然后输入若想在屏幕上输出一行提示信息,然后输入数据数据, 下列语句错误。下列语句错误。int a1, a2; scanf(input a1, a2:%d, %d, &a1, &a2); 可采用下列语句:可采用下列语句:printf(input a1, a2:);scanf(%d, %d, &a1, &a2);51输入输出操作中常见的错误分析在输入数据时,遇以下情况时该数据认为本在输入数据时,遇以下情况时该数据认为本输入结束。输入结束。 遇空格,或按遇空格,或按“回车回车”或或“跳跳”(

14、TAB键键) 遇宽度结束,如遇宽度结束,如%3d, 只取只取3列。列。 遇非法输入。遇非法输入。(6)在需要输入多个数据时在需要输入多个数据时,应使用一条应使用一条scanf语语句将多个输入合并在一起输入句将多个输入合并在一起输入,尽量避免尽量避免scanf语句的多次连续使用而出现越界错误。语句的多次连续使用而出现越界错误。52常见错误常见错误scanf(%d,%fn”,&a,&b);scanf(%d,%f”,a,b);scanf(%7.2f,&a);53Please input a and b:a=12, b=34, a+b = 4612 34 54Please in

15、put a and b:a=12, b=34, a+b = 4612 34 55Please input a and b:a=12, b=34, a+b = 461234 56Please input a and b:a=12, b=3, a+b = 15123a 57Please input a and b:a=12, b=34, a+b = 4612,34 58Please input a and b:a=12, b=56, a+b = 68123456 5960 61626364 65666768Please input an integer:12 Please input an character :a Please input a float number: 3.5 integer:12character :afloat number:3.50000069Please input an integer:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论