您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 数据输入输出&格式输入输出
课前预习将手机调到静音认真做笔记及时完成作业上课要求了解输入输出的概念学会字符型数据的输入输出学会格式输入输出学习目标输入输出的概念putchar()函数输出字符getchar()函数输入字符printf()函数输出数据scanf()函数输入数据顺序结构程序结构举例学习内容输入输出函数输入输出是程序中最基本的一种操作,几乎每一个C程序都包含输入输出。所谓输入输出是以计算机主机为主体而言的。从计算机向外部输出设备(如显示屏、打印机、磁盘等)输出数据称为“输出”。从输入设备(如键盘、磁盘、光盘、扫描仪等)向计算机输入数据称为“输入”。C语言本身并没有输入输出语句,输入输出功能是由系统提供的库函数实现的。C语言函数库中有一批“标准输入输出函数”,它是以标准的输入输出设备(一般为终端设备)为输入输出对象的,其中有putchar(输出字符)、getchar(输入字符)、printf(格式输出)、scanf(格式输入)、puts(输出字符串)、gets(输入字符串)。在使用系统库函数时,要在程序中使用预编译指令“#include”如#includestdio.h,.h被称为头文件,是head的缩写。两种头文件包含指令形式的差别1、#include“xxx.h”用引号,代表编译程序会优先在程序的本地目录搜索这个文件,找不到再搜索系统目录。2、#includexxx.h用尖括号,代表编译程序只会在系统目录(系统环境变量和编译本身设置的默认搜索目录)搜索这个文件。使用方法:一般是用双引号来引用自己编写的文件,而用尖括号引用系统标准的文件,建议使用尖括号的形式。1.putchar字符输出函数调用格式:putchar(参数)参数形式:字符常量/变量、整型常量/变量;功能:向系统输出设备(显示器)输出一个字符。要求:使用文件包含预编译命令#includestdio.h字符数据的输入输出输出“BOY”字符。#includestdio.hvoidmain(){chara,b,c;a='B';b='O';c='Y';putchar(a);putchar(b);putchar(c);putchar('\n');}输出结果BOY#includestdio.hvoidmain(){chara,b,c;a='B';b='O';c='Y';putchar(a);putchar('\n');putchar(b);putchar('\n');putchar(c);putchar('\n');}//输出结果?#includestdio.hvoidmain(){inta,b,c;a=66;b=79;c=89;putchar(a);putchar(b);putchar(c);putchar('\n');}结论:putchar(c)中c可以是字符变量或整型变量(其值在字符的ASCII代码范围内),c也可以是字符常量或整型常量,如putchar(‘B’)与putchar(66)等价。例:putchar(‘\101’)putchar(‘\’’)putchar(‘\015’)2、getchar字符输入函数一般形式:getchar()功能:从终端(或系统隐含指定的输入设备)输入一个字符。函数值:从输入设备得到的字符。例:用getchar函数输入字符。#includestdio.hvoidmain(){chara,b,c;a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);putchar(‘\n’);//连续输入BOY,按enter确认}//输出结果为BOY在用键盘输入信息时,并不是在键盘上敲一个字符,该字符就立即送到计算机中。从键盘敲入的字符被暂存在键盘的缓冲器中,只有按了enter键才能将这些字符一起输入到计算机中,按先后顺序分别赋给相应的变量。思考:输出B后按enter键输入O后按enter键的输出结果。例:将从键盘输入的字符输出。#includestdio.hvoidmain(){putchar(getchar());//将接收到的字符输出putchar(getchar());putchar(getchar());putchar(‘\n’);}例:将从键盘输入的单个字符输出。#includestdio.hvoidmain(){printf(%c,getchar());}程序的作用为:先从键盘输入一个字符,然后用输出格式输出该字符。1、printf格式输出函数调用格式:printf(格式控制字符串[,输出项列表])功能:在标准输出设备上,按指定格式对应输出各个输出项。参数:格式控制字符串中可包含格式声明、普通字符;输出项列出了要输出的对象(可以没有),多项之间用逗号分隔;形式为常量、变量、表达式、函数调用等。格式输入输出例:printf(“i=%d,c=%c\n”,i,c);printf(“%d%d\n”,a,b);格式控制:用双撇号括起来的字符串,称为“转换控制字符串”,简称“格式字符串”。格式控制包含两种信息:•格式声明:%+格式字符,如%d、%f、%c等。•普通字符:按照原样输出的数据,如“请输入四位数字”,i=,c=。基本的格式字符:(1)d格式字符,按十进制数据的实际长度输出。(2)i格式字符,作用与d格式字符相同,按十进制整型数据的实际长度输出,一般用%d而很少用%i。(3)c格式字符,用来输出一个字符。charch=‘a’;printf(“%c”,ch);(4)s格式字符,用来输出一个字符串。printf(“%s”,“CHINA”);(5)f格式字符,用来输出实数(单、双精度),以小数形式输出,可以不指定输出数据的长度,由系统自动指定,系统处理的方法是:实数中的整数部分全部输出,小数部分输出6位。(6)e格式字符,以指数形式输出实数,可以不指定输出数据所占的宽度和数字部分的小数位数。许多C编译系统会自动指定给出数字部分的小数位数为6位,指数部分占5列。P76.例:用printf函数输出字符数据。#includestdio.hvoidmain(){charc=‘a’;inti=97;printf(“c=%c,c=%d\n”,c,c);printf(“i=%c,i=%d\n”,i,i);}例:分析输出实数的有效位数#includestdio.hvoidmain(){floata,b;a=111111.111;b=222222.222;printf(”%f\n”,a+b);}//输出误差例:分析输出双精度的有效位数#includestdio.hvoidmain(){doublea,b;a=11111111.11111111;b=22222222.22222222;printf(%f\n,a+b);}//输出误差2、scanf格式输入函数调用格式:scanf(格式控制,地址表列)功能:按格式控制字符串中指定的格式,从键盘输入常数,并存入对应变量的地址中。参数:格式控制可包含格式说明、普通字符;地址表列是要获得数据的变量地址,多个输入项间逗号分隔;变量地址:&变量名,其中&为地址运算符例:用scanf函数输入数据#includestdio.hvoidmain(){inta,b,c;scanf(“%d%d%d\n”,&a,&b,&c);printf(“a=%d,b=%d\,c=%d\n”,a,b,c);}//输入a、b、c的值,数据间以空格分隔。例:scanf(“%d%d%d\n”,&a,&b,&c);scanf函数中的&a,&b,&c中的&是地址运算符,&a指变量a在内存中的地址。scanf函数的作用是:读入a,b,c的值并存放到变量a,b,c的存储单元中。scanf函数中的格式声明scanf(“%d%d%d\n”,&a,&b,&c);//格式控制字符串中包含3个格式声明符%d。scanf(“a=%d,b=%d\,c=%d\n”,a,b,c);//格式控制字符串中包含格式声明符以外的字符。说明:(1)scanf函数中的“格式控制”后面应当是变量地址,而不是变量名。scanf(“%d%d%d\n”,a,b)(2)如果在格式控制字符串中除了格式声明以外还有其他字符,则在输入数据时在对应位置输入与这些字符相同的字符,如scanf(“%d,%d\n”,&a,&b);(3)在用%c格式声明输入字符时,空格字符和转义字符都作为有效字符输入。scanf(“%c%c%c\n”,&a,&b,&c);输入abc输出结果?abc输出结果?注意:在连续输入字符时,在两个字符之间不要插入空格或其他分隔符。在连续输入数值时,在两个数值之间需要插入空格(或其他分隔符),以使系统能区分两个数值。(4)在输入数值数据时,空格、回车、Tab键或遇不合要求的输入时,认为该数据结束。P79。(5)对unsigned型变量所需的数据,可以用%u或%d格式输入。输入三角形的三个边长,求三角形面积。大小写字母的转换。求二次方程的根。提高部分小结顺序结构程序结构举例使用getchar和putchar实现从键盘输入三个小写字母,输出三个大写字母。求二次方程的根。作业
本文标题:数据输入输出&格式输入输出
链接地址:https://www.777doc.com/doc-5699940 .html