C语言----数据的输入输出

1.有关数据输入输出的概念

注意以下几点:

(1)所谓输入输出是以计算机主机为主体而言的。 从计算机向输出设备(如显示器、打印机等)输出数据称为输出,从输入设备(如键盘、光盘、扫描仪等)向计算机输入数据称为输入。

(2)C语言本身不提供输入输出语句。输入和输出操作是由C标准函数库中的函数来实现的。C语言函数库中有一批标准的输入输出函数,其中有putchar(输出字符)、getchar(输入字符)、printf(格式输出)、scanf(格式输入)、puts(输出字符串)、gets(输入字符串)。

(3)要在程序文件的开头用预处理指令#include把有关头文件放在本程序中。如:

#include<stdio.h> //其中stdio.h称为头文件

#include指令还有一种形式,如: #include"stdio.h"

2.printf函数输出数据

1.printf函数的一般格式

printf函数的一般格式为:printf(格式控制,输出表列)

(1)**"格式控制"**是用双撇号括起来的一个字符串,称为格式控制字符串,简称格式字符串。它包括两个信息:

格式声明 。格式声明由"%"和格式字符组成,如% d 、% f 等。它的作用是将输出的数据转换为指定的格式后输出。格式声明总是由"%"字符开始的。

普通字符。普通字符即需要在输出时原样输出的字符。

(2)输出表列是程序需要输出的一些数据,可以是常量、变量或表达式。

2.格式字符

(1)d格式符

用来输出一个有符号的十进制整数。

可以在格式声明中指定输出数据的域宽(所占的列数),如用"%5d",指定输出数据占5列,输出的数据显示在此五列区域的右侧。若输出long(长整型)数据,在格式符数据前加字母l(代表long),即"%ld"。若输出long long (双长整型)数据, 格式符d前加两个字母代表 ll(long long),即"%lld "。

(2)c格式符

用来输出一个字符。

一个整数如果在0-127范围里,也可以用"%c"使之按字符形式输出,在输出前,系统会将该整数作为ASCII码转换成相应的字符;如:

short a=121;

printf("%c",a);

输出字符y。

(3)s格式符

用来输出一个字符串。

(4)f格式符

用来输出实数(包括单、双精度,长双精度),以小数形式输出。

①基本类型,为%f。

②如果指定数据宽度和小数位数,用%m.nf

③输出的数据向左对齐,用%-m.nf。

(5)e格式符

用格式声明%e指定以指数形式输出实数。如果不指定输出数据所占的宽度和数字部分的小数位数,许多 C 编译系统(如 Visual C ++)会自动给出数字部分的小数位数为6位,指数部分占5列(如 e +002,其中" e "占1列,指数符号占1列,指数占3列)。数值按标准化指数形式输出(即小数点前必须有而且只有1位非零数字)。如:

printf("%e",123.456);

输出结果为:1.234560e+002。所输出的实数共占13列宽度(不同的系统规定略有不同)。

也可以用"%m.ne"形式声明。格式符e也可以写成大写模式E。

(6)其他格式符

①i格式符

作用与 d 格式符相同,按十进制整型数据的实际长度输出。一般习惯用% d 而少用% i 。

②o格式符

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

③x格式符

以十六进制数形式输出整数。同时也可以用"%lx"来输出长整型数,也可以指定字段的宽度。

④u格式符

用来输出无符号(unsigned)型数据,以十进制整数形式输出。

⑤g格式符

用来输出浮点数,系统自动选f格式或e格式输出,选择其中长度较短的格式,不输出无意义的0。

3.scanf函数输入数据

1.scanf函数的一般形式。

scanf(格式控制,地址表列)

而其格式声明与输出的相似。

注意:scanf函数中的格式控制后面应当跟变量地址,而不是变量名。

4.字符输入输出输出函数

用putchar输出一个字符,用getchar输入一个字符。

相关推荐
aaaameliaaa9 小时前
字符函数和字符串函数
c语言·笔记·算法
夜月yeyue9 小时前
AUTOSAR CP 从上电到 Runnable
c语言·网络·tcp/ip·车载系统
微学AI10 小时前
一根针指向所有方向:挂谷猜想对 LLM Agent 技能-记忆架构的启示
开发语言·人工智能·架构·挂谷猜想
豆瓣鸡11 小时前
算法日记 - Day3
java·开发语言·算法
白白白小纯11 小时前
算法篇—反转链表
c语言·数据结构·算法·leetcode
韭菜炒鸡肝天11 小时前
VTK开发笔记(一):VTK介绍,Qt..+VSx+VTK.编译
开发语言·笔记·qt
小羊先生car11 小时前
RTOS-F429-HAL-绝对延时和相对延时(2026/7/31)
c语言·rtos
Aaron - Wistron12 小时前
Web API C# (Furion版)带 单元测试
开发语言·后端·c#
Dxy123931021613 小时前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
05664613 小时前
Python康复训练——常用标准库
开发语言·python·学习