手机版

C语言的程序设计-数据的输入和输出

时间:2025-07-03   来源:未知    
字号:

C语言程序设计

第四章数据的输入和输出

共 25 页

第 1 页

本章要点 掌握C语言中输入输出数 据的方法 掌握各种格式的使用

共 25 页

第 2 页

数据输入输出的概念 输出:从计算机向显示器、打印机等外部设 备输出数据。 输入:从标准输入设备键盘、鼠标等向计算 机输入数据。 C语言不提供输入输出语句,输入输出操作 是由C函数库中的函数实现。 两个基本的输出(输入)函数: 即:格式输出(输入)函数 字符输出(输入)函数共 25 页 第 3 页

4.1 数据输出4.1.1 格式输出函数1. 函数的基本功能 格式:printf(格式控制串,输出表列) 功能:从标准输出设备上,按指定的格式输出对应 的变量。 2. 函数说明: (1) 格式控制串由双引号括起来,由“%”和格式符 以及普通字符(即需要原样输出的字符组成)。 (2)输出表列是需要输出的一些数据,可以是常量、 变量或表达式。 (3)输出的参数必须与格式控制符中的格式说明在类 型、个数和位置上一一对应。共 25 页 第 4 页

[例 ]:

#include <stdio.h> main( ) 格式说明(格式字符) { int a=3, b=4; printf(“a=%d b=%d”,a,b); } 运行结果: 输出表列 普通字符 a=3 b=4

共 25 页

第 5 页

3.格式说明符

一般格式:%[-][m][.][n][l]格式符说明如下: - 当数据的宽度小于显示宽度时,数据左对齐,右方补空格. m 输出数据占m个字符位,不够右对齐,左边填空格。 n 输出数据有n位小数 m.n 输出数据占m列,n位小数

对不同类型的数据使用不同的格式字符。有以 下几种格式符:

共 25 页

第 6 页

基本格式控制符d: 以十进制带符号形式输出整型数 o:以八进制无符号形式输出整型数 x:以十六进制无符号形式输出整型 u:以十进制无符号形式输出整型数 f:以小数形式输出单、双精度实型数 e: 以指数形式输出单、双精度实型数 c: 以字符形式输出一个字符 s: 以字符形式输出一个字符串 ld:以十进制带符号形式输出长整型数

共 25 页

第 7 页

(1) d格式符: 输出十进制整数。 %d 按整型数据的实际长度输出。 %md m为指定的输出字段的宽度.若数据的位数小于 m,则左端补以空格;若大于m,则按实际位数输出。 %ld 输出长整型数据.

例:int a=1234; printf(“%3d”,a); printf(“%5d\n”,a); printf(“%-5d”,a);

1234 1234实际 左补空

1234 左对齐,右补空共 25 页 第 8 页

以下程序运行后的输出结果是? main() { int x,y,z; x=y=1; z=x++,y++,++y; printf("%d,%d,%d",x,y,z);}

A)2,3,3

B)2,3,2

C)2,3,1

D)2,2,1

共 25 页

第 9 页

(2)o格式符

以八进制数形式输出整数。

将内存单元中的各位的值(0或1)按八进制形式输出, 输出的数值不带符号,将符号也作为八进制数的一部分 输出。 例如,

-1在内存单元中(以补码形式存放)如下:

int

a=-1;

-1: 1 1 11 11 11 11 11 11 11

printf(“%d,%o”,a,a);

输出:

VC++下

-1,177777共 25 页 第 10 页

(3) x格式符,以十六进制数形式输出整数。 (4) u格式符,以十进制形式输出无符号型数据。 [例 ] #include <stdio.h> main() { unsigned int a=65535; int b=-2; printf(“a=%d,%o,%x,%u\n”,a,a,a,a); printf(“b=%d,%o,%x,%u\n”,b,b,b,b); } 输出: a=-1,177777,ffff,65535 b=-2,177776,fffe,65534

VC++下

(5) c 格式符 输出一个字符。整数的值在33~126范围内,也可以用字符形式输 出。在输出前,将该整数转换成相应的ASCII字符; 字符数据也可以用整数形式输出。 [例 ] #include <stdio.h> main( ) { char c='a'; int i=97; printf("%c,%d\n",c,c); printf("%c,%d\n",i,i); }

输出: a,97a,97共 25 页 第 12 页

(6) s格式符 输出一个字符串。 说明: 若不指定字符宽度和对齐方式,则输出全部字符串. 例如: printf("%s", "CHINA");程序运行输出: CHINA 若指定宽度m,实际字符个数大于m,按实际宽度输 出;如果实际字符个数小于m,字符右对齐,左边填 空格。 例如: printf(“s1=%s,s2=%3s,s3=%-5.2s,s4=%.3s", "abcd", "abcd", "abcd", "abcd") ; 程序运行输出: s1=abcd,s2=abcd,s3=ab ,s4=abc

共 25 页

第 13 页

(7) f格式符

以小数形式输出实数(包括单、双精度)。1) %f , 不指定字段宽度,由系统自动指定,使整数部 分全部输出,并输出6位小数(输出双精度数据, 也是6位,但误差降低)。 2) %m.nf , 指定输出的数据共占m列,其中有n位小 数.若数据长度小于m,则左端补空格。

例:float x=15.3,y=222.225111;printf(“%f,%6.2f\n”,x,y);

共 25 页

第 14 页

(8) e格式

以指数形式输出实数。

1) %e 不指定输出数据所占的宽度和数字部分小数 位数,由系统自动指定给出6位小数,指数部分占5位,其 中“e”占一位,指数符号占一位,指数占3位.数值按标 准化指数形式输出(小数点前有1位非零数字)。例如:

printf(“%e”,123.456);输出:1.234560e+0026位 3位

e格式输出的实数共占13列宽度.共 25 页 第 15 页

(9) g格式符:根据数值的大小输出实数,自动选 f 格式或 e 格式(选择输出时占宽度较小的一种),且不输出无意 义的零。 例如: f=123.468;printf(“%f %e %g”,f,f,f);

输出如下:123.46800010列

1.234680e+00213列

123.46810列

共 25 页

第 16 页

几点说明:1. 格式控制串的控制符号与变量表要一一对应,即: 类型相同,个数相等 2. 格式控制 …… 此处隐藏:1833字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言的程序设计-数据的输入和输出.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)