第04章 基本输入、输出和顺序程序设计

来源:网络收集 时间:2025-07-07 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

C语言

第4章 基本输入、输出和 顺序程序设计制作人:王敬华

C语言

C语 言 程 序 设 计 教 程 第 四 章

第4章:基本输入输出和顺序程序设计 学习的意义程序对数据的处理流程: 程序的主要功能就是对数据的处理,其整个流程主要包 括数据的输入、数据的处理、数据的输出。 数 据 输 出

基 本 输 入 输 出 和 顺 序 程 序 设 计

数 据 输 入

数 据 处 理

C程序中如何实 现数据输入?

C程序中如何实 现数据输出?

C语言

C语 言 程 序 设 计 教 程 第 四 章

学习的意义程序的结构: 写文章有文章的结构 建房子有房子的结构 制造机械产品由机械产品的结构 ……… 那么编写程序是否有程序的结构呢? 顺序结构 程序结构

基 本 输 入 输 出 和 顺 序 程 序 设 计

YES!

本章讨论 第5章讨论 第6章讨论

选择结构循环结构

C语言

C语 言 程 序 设 计 教 程 第 四 章

学习目标 掌握各种类型数据的格式化输入输出方法; 掌握字符数据的非格式化输入输出方法; 理解三种程序控制结构的流程图; 学会简单顺序程序的设计; 养成良好的程序设计习惯;

基 本 输 入 输 出 和 顺 序 程 序 设 计

学习内容 格式化输出printf 格式化输入scanf 字符数据的非格式化输入、输出 程序的控制结构 顺序程序设计举例 本章小结

C语言

C语 言 程 序 设 计 教 程 第 四 章

4.1

格式化输出printfprintf ("格式控制字符串",表达式1,表达式2,…,表达式n);

一般格式 功能 按照 格式控制字符串 的要求,将表达式1,表达式 2,…,表达式n的值显示在计算机屏幕上。 说明 格式控制字符串用于指定输出格式。它包含两类字符: 格式控制符 常规字符:包括可显示字符和用转义字符表示的字符。 (格式转换符) 格式控制符:以%开头的一个或多个字符,以说明输出数 格式控制符 据的类型、形式、长度、小数位数等。其格式为: 常规字符常规字符

基 本 输 入 输 出 和 顺 序 程 序 设 计

(修饰符) %[修饰符]格式转换字符

(转义符)

例:

long int x = 0x8AB6; printf (“The Value of x is %ld\n”, x);

C语言

C语 言 程 序 设 计 教 程 第 四 章

printf使用时的注意事项 (1) 格式控制字符串可以不包含任何格式控制符。 (2) 当格式控制字符串中既含有常规字符,又包含有格 printf (“how are you?\n”); //只有一个字符串参数, 式控制符时,则表达式的个数应与格式控制符的个数 输出为:how are you? 一致。此时,常规字符原样输出,而格式控制符的位 printf (“how old are you?\n”, 20); //带有两个参数,20没有意义, 输出为:how old are you? 臵上输出对应的表达式的值,其对应的顺序是:从左

到右的格式控制符对应从左到右的表达式。 (3)已 如果格式控制字符串中格式控制符的个数多于表达 知: int a = 2; 式的个数,则余下的格式控制符的值将是不确定的。 函数调用: printf("a * a = %d, a + 5 = %d\n", a * a, a + 5); (4) 不同类型的表达式要使用不同的格式转换符,同一 printf ("5 + 3 = %d, 5 - 3 = %d, 5 * 3 = %d", 5 + 3, 5 - 3); 表达式如果按照不同的格式转换符来输出,其结果可 输出结果将是: 3= 8, 57– 3 = 2,5 * 3 = -28710 实际输出: a *5 a+ = 4, a+ 5= 能是不一样的。

基 本 输 入 输 出 和 顺 序 程 序 设 计

char ch = 'A'; printf ("ch = %c", ch);printf ("ch = %d", ch);

输出随机//输出结果:ch = A

(以字符形式输出)//输出结果:ch = 65 (以'A'字符的ASCII码形式输出)

C语言

C语 言 程 序 设 计 教 程 第 四 章

printf函数中的格式转换字符及其含义格式转 换符 %d 或 %i 含 义 对应的表达 式数据类型 有符号整型

以十进制形式输出一个整型数据。例如: int a = 20; printf ("%d", a); //输出20 以十六进制形式输出一个无符号整型数据。例如: int a = 164; printf ("%x", a); //输出a4 printf ("%X", a); //输出A4

%x, %X

无符号整型

基 本 输 入 输 出 和 顺 序 程 序 设 计

以八进制形式输出一个无符号整型数据。例如: %o ( 字 int a = 164; 母o ) printf ("%o", a); //输出244 %u 以十进制形式输出一个无符号整型数据。例如: int a = -1; printf ("%u", a); //BC下输出65535,VC下 4294967295 输出一个字符型数据。例如: char ch = 'A'; printf ("%c", ch); //输出A

无符号整型

无符号整型

%c

字符型

C语言

C语 言 程 序 设 计 教 程 第 四 章

printf函数中的格式转换字符及其含义格式转 换符%s 含 义

对应的表达 式数据类型字符串

输出一个字符串。例如: printf ("my name is %s", "wangjinghua"); //输出my name is wangjinghua以十进制小数形式输出一个浮点型数据。例如: float f = -12.3; printf ("%f", f); //输出-12.300000 以指数形式输出一个浮点型数据。例如: float f = 1234.8998; printf ("%e", f); //输出1.234900e+003 printf ("%E", f); //输出1.234900E+003 按照%f或%e中输出宽度比较短的一种格式输出。 以主机的格式显示指针,即变量的地址。例如: int a = 2; printf (“%p”, &a); //BC下输出FFD8, VC下 0012FF7C

%f

浮点型

基 本 输 入 输 出 和 顺 序 程 序 设 计

%e, %E %g, %G %p

浮点型

浮点型

指针类型

C语言

C语 言 程 序 设 计 教 程 第 四 章

1. 整数的输出 有符号整数的输出 一般形式: %[-] [+] [0] [width] [.precision] [l] [h] d

说明:

辅助格式控制字符(修饰符)

基 本 输 入 输 出 和 顺 序 程 序 设 计

[ ]:表示可选项,可缺省。 -:表示输出的数据左对齐,缺省时是右对齐。

+:输出正数时,在数的前面加上+号。 数字0:右对齐时,如果实际宽度小于width,则在左边的空位补0。 width:无符号整数,表示输出整数的最小域宽(即占屏幕的多少 格)。若实际宽度超过了width,则按照实际宽度输出。 .precision:无符号整数,表示至少要输出precision位。若整数的 位数大于precision,则按照实际位数输出,否则在左边的空位上补0。 字母l:如果在d的前面有字母l(long),表示要输出长整型数据。 字母h:如果在d的前面有字母h(short),表示要输出短整型数据。

C语言

C语 言 程 序 设 计 教 程 第 四 章

【例】有符号整数的格式化输出#include <stdio.h> void main ( ) { int a = 123; long L = 65537; printf (" 12345678901234567890\n"); printf ("a=%d--------(a=%%d)\n", a); printf ("a=%6d-----(a=%%6d)\n", a); printf ("a=%+6d-----(a=%%+6d)\n", a); printf ("a=%-6d-----(a=%%-6d)\n", a); printf ("a=%-06d-----(a=%%-06d)\n", a); printf ("a=%+06d-----(a=%%+06d)\n", a); printf ("a=%+6.6d----(a=%%+6.6d)\n", a); printf ("a=%6.6d-----(a=%%6.6d)\n", a); printf ("a=%-6.5d-----(a=%%-6.5d)\n", a); printf ("a=%6.4d-----(a=%%6.4d)\n", a); printf ("L=%ld------(L=%%ld)\n", L); printf ("L=%hd----------(L=%%hd)\n", L); }

L是一长整型数65537, 其值为十六进制 0X00010001,所以要将 其转换成短整型,即取 低16位0x0001,将其输 出,故输出为1。

运行结果:12345678901234567890 a=123--------(a=%d) a= 123-----(a=%6d) a= +123-----(a=%+6d) a=123 -----(a=%-6d) a=123 -----(a=%-06d) a=+00123-----(a=%+06d) a=+000123----(a=%+6.6d) a=000123-----(a=%6.6d) a=00123 -----(a=%-6.5d) a= 0123-----(a=%6.4d) L=65537------(L=%ld) L=1----------(L=%hd)

基 本 输 入 输 出 和 顺 序 程 序 设 计

Why?

C语言

C语 言 程 序 设 计 教 程 第 四 章

1. 整数的输出 无符号整数的输出 一般形式: %[-] [#] [0] [width] [.precision] [l] [h] u | o | x | X辅助格式控制字符(修饰符)

说明: [ ]:表示可选项,可缺省。 | :表示互斥关系。 # :表示当以八进制形式输出数据(%o)时,在数字前输 出0;当以十六进制形式输出数据(%x或%X)时,在数字前 输出0x或0X。 .precision的含义与前面介绍的相同,但要注意,在TC和BC 下,precision所指定的位数也包含了0x或0X所占的位数,可在 VC下,则不包含0x或0X所占的位数。 其它字段的含义与前面介绍的相同。

基 本 输 入 输 出 和 顺 序 程 序 设 计

C语言

C语 言 程 序 设 计 教 程 第 四 章

【例】无符号整数的格式化输出

运行结果(在BC3.1下):

基 本 输 入 输 出 和 顺 序 程 序 设 计

a=-1, a=65535---(a=%d, a=%u) 00000000 a=ffff, a=FFFF---(a=%hx, a=%X) #include <stdio.h> 111111110 10000000 u=77777, u=7FFF------(u=%o, u=%X) void main ( )00000000 宽度包含 1111111 10000000 u=0X00007F

FF---------(u=%#010X) { 111111111 0X u=0X00007FFF-------(u=%#10.10X) int a = -1; 111111111 1111111 L=FFFF8000-----------(L=%lX) unsigned u =1111111 32767; L=0X00008000 -----(L=%-#14.10X) unsigned long L = -32768; printf ("a=%d, a=%u---(a=%%d, a=%%u)\n", a, a); 1111111111 printf ("a=%hx, a=%X---(a=%%hx, a=%%X)\n", a, a); 1111111111 printf ("u=%o, u=%X------(u=%%o, u=%%X)\n", u, u); 111111 1111111111 printf ("u=%#010X---------(u=%%#010X)\n", u); 1111111111 运行结果(在VC6.0下): printf ("u=%#10.10X------111111110 11 (u=%%#10.10X)\n", u); a=-1, a=4294967295---(a=%d, a=%u) 111111100 printf ("L=%lX----------00000000 a=ffff, a=FFFFFFFF---(a=%hx, a=%X) 000000000 (L=%%lX)\n",L); 00000000 u=77777, u=7FFF------(u=%o, u=%X) 10000000 宽度不包 printf ("L=%-#14.10X----00000 u=0X00007FFF---------(u=%#010X) 10000000 111111111 含 0X (L=%%-#14.10X)\n", L); u=0X0000007FFF-------(u=%#10.10X) 111111111 1111111 } L=FFFF8000-----------(L=%lX)

1111111

L=0X00FFFF8000

-----(L=%-#14.10X)

C语言

C语 言 程 序 设 计 教 程 第 四 章

2. 实数的输出 一般形式: %[-] [+] [#] [0] [width] [.precision] [l | L] f | e | E | g | G 说明: 辅助格式控制字符(修饰符)

基 本 输 入 输 出 和 顺 序 程 序 设 计

[ ]:表示可选项,可缺省。 | :表示互斥关系。 #:必须输出小数点。 .precision:规定输出实数时,小数部分的位数。 l:输出double型数据(缺省时也是输出double型数据)。 L:输出long double型数据。 其它字段的含义与前面介绍的相同。

C语言

C语 言 程 序 设 计 教 程 第 四 章

【例】实数的格式化输出#include <stdio.h> void main ( ) { double f = 2.5e5; printf (" 12345678901234567890\n"); printf ("f=%15f--------(f=%%15f)\n", f); printf ("f=%015f--------(f=%%015f)\n", f); printf ("f=%-15.0f--------(f=%%-15.0f)\n", f); printf ("f=%#15.0f--------(f=%%#15.0f)\n", f); printf ("f=%+15.4f--------(f=%%+15.4f)\n", f); printf ("f=%15.4E--------(f=%%15.4E)\n", f); 运行结果: } 12345678901234567890 f= 250000.000000--------(f=%15f) f=00250000.000000--------(f=%015f) f=250000 --------(f=%-15.0f) f= 250000.--------(f=%#15.0f) f= +250000.0000--------(f=%+15.4f) f= 2.5000E+005--------(f=%#15.4E)

基 本 输 入 输 出 和 顺 序 程 序 设 计

C语言

C语 言 程 序 设 计 教 程 第 四 章

3. 字符和字符串的输出 一般形式: 输出字符: %[-] [0] [width] c辅助格式控制字符(修饰符)

输出字符串:

%[-] [0] [width] [.precision] s辅助格式控制字符(修饰符)

基 本 输 入 输 出 和 顺 序 程 序 设 计

说明: [ ]:表示可选项,可缺省。 .precision:表示只输出字符串的前precision个字符。 其它字段的含义与前面介绍的相同。

C语言

C语 言 程 序 设 计 教 程 第 四 章

【例】字符及字符串的格式化输出#include <stdio.h> void main ( ) { char ch = 'A'; printf (" 12345678901234567890\n");

printf ("ch=%c-----------(ch=%%c)\n", ch); printf ("ch=%4c--------(ch=%%4c)\n", ch); printf ("ch=%-4c--------(ch=%%-4c)\n", ch); printf ("ch=%04c--------(ch=%%04c)\n", ch); printf ("st=%s--------(st=%%s)\n", "CCNU"); printf ("st=%6s------(st=%%6s)\n", "CCNU"); 运行结果: printf ("st=%06.3s------(st=%%06.3s)\n", 12345678901234567890 "CCNU"); ch=A-----------(ch=%c) } ch= A--------(ch=%4c) ch=A --------(ch=%-4c) ch=000A--------(ch=%04c) st=CCNU--------(st=%s) st= CCNU------(st=%6s) st=000CCN------(st=%06.3s)

基 本 输 入 输 出 和 顺 序 程 序 设 计

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典行业资料第04章 基本输入、输出和顺序程序设计在线全文阅读。

第04章 基本输入、输出和顺序程序设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/doc/1705622.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219