您好,欢迎访问三七文档
2.7C语言数据的输出§C语言本身没有提供用于输入或输出数据的语句,所有需要进行输入或输出数据的操作都是通过调用标准库函数(由系统提供)来实现的。§所谓输入输出是以计算机为主体而言的。§本节介绍的是向标准输出设备(显示器)输出数据的语句。§在C语言中,所有数据的输入/输出都是由库函数完成的。因此都是函数语句。一、数据输入输出的概念§在使用C语言库函数时,要用预编译命令#include将有关“头文件”包括到源文件中。使用标准输入输出库函数时要用到“stdio.h”文件,因此源文件开头应有以下预编译命令:#includestdio.h或#include”stdio.h”stdio是standardinput&outupt的意思。§考虑到printf和scanf函数使用频繁,系统允许在使用这两个函数时可不加#includestdio.h或#include”stdio.h”二、字符输出函数-putchar函数§putchar函数是字符输出函数,其功能是在显示器上输出单个字符。§其一般形式为:putchar(参数);§使用本函数前必须要用文件包含命令:#includestdio.h或#include“stdio.h”putchar的函数值为它所输出字符的ASCII码值参数:整型常量(0~127)整型变量intx;x=12;字符变量charch;ch=‘c’字符常量‘a’(用单引号引起来的单个普通字符或者转义字符)【例1】输出单个字符main(){intx=65;putchar(x);putchar(‘\x41’);putchar(‘A’);putchar(65);putchar(‘\n’);}对控制字符则执行控制功能,不在屏幕上显示。变量定义参数为整型变量参数为字符常量参数为字符常量参数为整型常量参数为字符常量,转义字符【例2】输出单个字符#includestdio.hmain(){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);}练习§请使用putchar函数编写完整的程序在屏幕上输出如下的字符形式:A(要求用整型变量输出)B(要求用整型常量输出)CDE(要求用字符常量输出)F(要求用字符变量量输出)三、格式化输出函数-printf§printf函数称为格式输出函数,它可以按用户指定的格式,把指定的数据显示到显示器屏幕上。§作为特例printf可以不用加头文件stdio.h。§printf有两种用法。1、格式一printf(“想输出的任何字符都可以写到这”);当然你想输出的字符序列可以包括转义字符,但不能包括%d、%f、%c等。printf(“Iamastudent!”);printf(“a+b=c”);练习要求用printf函数编写完整的程序输出下面的内容:IKnowyou!metoo!1234567891234567892、格式二printf(“你想输出的字符串,但其中要有%d/%f/%c…”,输出列表);printf(“格式输出字符串”,输出列表);inta=2,b=3,c;c=a+b;printf(“a+b=%d”,c);练习§要求用printf编写完整的程序输出下面的内容:a=3b=21a+b=24§(提示:首先定义三个变量,然后给变量赋值)四、printf输出整型数据%d表示把数据按十进制整型输出;%ld表示把数据按十进制长整型输出;%o表示把数据按八进制整型输出;%x表示把数据按十六进制整型输出;%u表示把数据按无符号整型输出。注意:除了%d(%ld),其余的格式都将数据作为无符号数输出。printf(%ld,100000L);正确printf(%d,100000L);结果-31072#includestdio.hvoidmain(){intx,y,z;x=129,y=0127,z=0x128;printf(%d,%d,%d\n,x,y,z);printf(%o,%o,%o\n,x,y,z);printf(%x,%x,%x\n,x,y,z);}运行结果:129,87,296201,127,45081,57,128§使用域宽和对齐方式来控制显示格式§在%和“d”(或者ld)之间加整数数字,表示数据显示的域宽;§在%后面加符号“-”,数据显示时左对齐,没有符号“-”,数据显示时右对齐。§例如:printf(%-6d%-6d%-6d\n,x,y,z);main(){inta=2,b=3,c;c=a+b;printf(“a+b=%6d\n”,c);printf(“a+b=%-6d\n”,c);}a+b=5a+b=5练习§请使用printf函数编写完整的程序,输出下面的内容:6781067816781236781237812五、printf输出实型数据%f输出普通的浮点数%e输出用科学记数法表示的浮点数doublea=2.3490;printf(“a=%le”,a);doublea=2.3,b=23.4;floatc=12.3,d=3.4;printf(“a=%le,b=%lf,c=%e,d=%f”,a,b,c,d);输出双精度(double)类型时,还需要在字符f或者e前加上小写字母l。输出浮点数时控制输出域宽和有效位在%与f(或e)之间加上两个数字并在两个数字之间加一个句点“.”。例如,%10.3f表示输出格式是域宽10,有效位3注意:域宽是总的宽度,它包括三部分:整数部分、小数点、小数部分,句点后面的整数是指小数点后面要保留的位数。#includestdio.h“main(){floatx;doubley;x=12.3456789;y=987654.321098;printf(\n%e,%le,x,y);①printf(\n%f,%lf,x,y);②printf(\n%.3f,%.3lf,x,y);③printf(\n%14.3f,%14.3lf,x,y);④printf(\n%-14.3f,%-14.3lf,x,y);⑤printf(\n%8.3f,%8.3lf,x,y);⑥printf(\n%14f,%14lf,x,y);⑦}练习§请使用printf函数编写完整的程序,输出下面的内容:678.1234567678.123456678.12345678.123456678.12§使用%c输出单个字符#includestdio.hvoidmain(){charc='H';chard='I';chare='!';printf(%c%c%c\n,c,d,e);}运行结果为:HI!六、printf输出字符型数据标准ASCII编码是把每个字符和与0~127的数值联系起来,用7位二进制表示,再将最高位充0,就是一个字节了。因此,字符可以跟整数进行转化和运算字符与整数的转化main(){chara,b,c;a=‘a’;b=‘A’;c=a-b;printf(“%d,%c”,c,c)}练习§请使用printf函数编写完整的程序在屏幕上输出如下的字符形式:A(要求用整型变量输出)B(要求用整型常量输出)CDE(要求用字符常量输出)F(要求用字符变量量输出)七、printf输出字符串数据有两种方法:一种是直接输出:printf(“howareyou!”);另一种是使用%s转换说明符:printf(“%s”,“howareyou!”);
本文标题:3-数据的输出
链接地址:https://www.777doc.com/doc-3397036 .html