首页 > 其他分享 >C语言—-数据的输入输出

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

时间:2024-07-10 11:30:19浏览次数:11  
标签:输出 函数 字符 scanf 输入输出 C语言 格式 数据 输入

数据的输入

C程序中实现输入的函数很多,下面逐个来进行介绍

用 printf 函数输出数据

  1. printf 函数的一般格式

                printf (“格式控制”,输出列表);
    

例如

#include<stdio.h>
int main()
{
	int a=1;
	
	printf("a=%d\n",a);
	
	printf("Hello Word");
	
	return 0;
}

在这里插入图片描述

其中注意格式控制包含两个方面
1.格式声明
由%,附加字符格式字符组成,它的作用是把要输出的数据转换为指定的格式输出,其一般形式可表示为

                   %   附件字符  格式字符

2.普通字符
除了要输出的数据外,可能要对数据添加一些描述(输出时按原样输出),这样的字符叫做普通字符。

下面来介绍一些常用的格式字符

格式字符说明
d i带符号的十进制输出整数
o以八进制无符号形式输出整数
x X以十六进制无符号形式输出整数,用x则输出十六进制数的a~f时用小写形式输出,用X时以大写形式输出
u以无符号十进制形式输出整数
c以字符形式输出,只输出一个字符
s输出字符串
f以小数形式输出单双精度数,隐含输出六位小数
e E以指数形式输出实数

字符,字符串 输出函数

除了可以用printf 函数%s输处字符外,C函数库还有一些专门用于输出字符的函数。

1.单个字符的输出 putchar 函数

putchar 函数的一般形式

                        putchar(c);
2.字符串的输出 puts 函数

其一般形式为

                        puts(字符数组);

注意:只能输出一个字符串

数据的输入

用 scanf 函数输入数据

1.scanf 函数的一般形式

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

2.输入: 输入的格式控制与 printf 函数差不多,下标列出scanf函数的格式字符

格式字符说明
d i带符号的十进制输出整数
o以八进制无符号形式输出整数
x X以十六进制无符号形式输出整数,用x则输出十六进制数的a~f时用小写形式输出,用X时以大写形式输出
u以无符号十进制形式输出整数
c以字符形式输出,只输出一个字符
s输出字符串
f以小数形式输出单双精度数,隐含输出六位小数
e E以指数形式输出实数

3.输入结束:scanf 函数以回车,空格,Tap键结束输入(这里注意用%c输入单个字符时例外)

应该注意的是

1.scanf 函数中是变量地址,而不是变量名,因此一定不要忘记加取地址符&;
2.如果在格式控制字符串中除了格式声明以外还有其他字符,则在输入数据时在对应位置上应输入与这些字符相同的字符
例如

scanf("a=%d",&a);

输入时应输入 a=1
3.再用用%c输入单个字符时,空格字符和转义字符中的其他字符都作为有效字符。

例如

char c,d,e;
scanf("%c%c%c",&c,&d,&e)

在输入时一定要连续输入三个字符,中间不要有空格

字符,字符串 输入函数

1.getchar单个字符输入函数

单个字符的输入除了使用scanf %c 还可以使用专门的 getchar函数
1.一般形式:

                         getchar()

注意:其没有参数,而且可以吃掉空格,因此在连续使用 scanf %s 格式输入字符串时,一般用它来吃掉空格。
例如

char a;
a=getchar();
2.gets函数输入字符串的函数

1.一般形式:

                         gets(字符数组);

结束输入:以回车键结束;
注意:这里与scanf %s 输入字符串不同,scanf 不能输入空格,而gets可以,因此 gets 一般用于输入带空格的字符串。

之后会持续更新c语言,希望会对大家有帮助,如有错误各位大佬轻喷,小白太想进步了,大家点点关注!!!

标签:输出,函数,字符,scanf,输入输出,C语言,格式,数据,输入
From: https://blog.csdn.net/2301_81189772/article/details/140260579

相关文章

  • JDBC学习记录3-数据库连接池
    JDBC学习记录3-数据库连接池以此记录自己的学习过程JDBC全称:JavaDataBaseConnectivityJDBC学习的是使用Java语言来操作关系型数据库的一套API。2024年7月10日11:13:04简单了解JDBC学习记录1-入门-CSDN博客JDBC学习记录2-API详解-CSDN博客四、数据库连接池和Drui......
  • iPhone数据恢复篇:在 iPhone 上恢复找回短信的 5 种方法
    方法1:检查最近删除的文件夹iOS允许您在30天内恢复已删除的短信。您需要先从“设置”菜单启用“过滤器”。让我们来实际检查一下。步骤1:打开“设置”>“信息”。步骤2:选择“未知和垃圾邮件”,然后切换到“过滤未知发件人”。步骤3:现在打开iPhone上的“信息”应用程......
  • 数据恢复篇:如何从硬盘中恢复照片
    如何从计算机硬盘恢复图片?和所有电子和机械设备一样,硬盘也可能因任何原因而损坏。如果您系统的硬盘停止工作,或者您在启动系统时听到振动声,则硬盘可能已损坏。如果是这样,硬盘上的数据怎么办?不要惊慌,这里我们将展示如何使用照片恢复工具从损坏的硬盘中恢复照片。从硬盘恢复照......
  • 【C语言】学习笔记:找出一个二维数组中的最大值,并打印出该最大值及其在数组中的位置
    找出一个二维数组中的最大值,并打印出该最大值及其在数组中的位置。首先,定义了必要的变量,包括用于遍历数组的索引变量i和j,以及用于存储最大值及其位置的变量hang、lie和max。定义了一个名为arry的二维数组,并初始化了其元素。使用两个嵌套的for循环来遍历数组,并......
  • 数据结构--单向链表篇(python实现)
    写在开头链表(Linkedlist)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)链表的优缺点优点不需要预先知道数据大小,实现灵活的内存动态管理插入、删除指定数据速度快缺点读取指定位置数据速......
  • 基于JavaWeb的酒店管理系统(源码+数据库+项目展示文档+部署文档)
    酒店管理系统报告系统概述酒店管理系统是为酒店设计开发的管理平台,旨在提供完善的管理功能以支持酒店的日常运营和管理。该系统基于JavaWeb技术栈开发,使用Servlet和JSP作为主要服务端技术,前端设计采用Layui和jQuery框架,通过美观的Windows风格界面提供用户友好的操作体验。系......
  • MyBatisPlus 实现数据库 CURD 操作
    BaseMapper接口方法介绍BaseMapper中提供了CRUD方法,具体方法如下://插入一条记录intinsert(Tentity);//根据entity条件,删除记录intdelete(@Param(Constants.WRAPPER)Wrapper<T>wrapper);//删除(根据ID批量删除)intdeleteBatchIds(@Param(Constants.COLLEC......
  • 遥遥领先!鲲鹏ARM架构下国产数据同步能力大幅提升16.9倍
    在上篇文章《2.6倍!WhaleTunnel客户POC实景对弈DataX》发布之后,一个客户突然向我们控诉其苦DataX久矣,因为是在信创的鲲鹏ARMCPU上运行,每天同步需要很长时间,问我们可以不可以帮忙解决。提起信创ARMCPU,大数据同仁们是又爱又恨,爱是因为价格真的便宜,恨是因为做大数据任务真的是不......
  • MySQL导入数据库报错#1118 - Row size too large ( 8126). 的解决方法
    导入SQL文件时报错(在执行创建表或者增加字段时,发现rowsize长度过长,会导致出现以下错误)[ERR]1118-Rowsizetoolarge(>8126).ChangingsomecolumnstoTEXTorBLOBorusingROW_FORMAT=DYNAMICorROW_FORMAT=COMPRESSEDmayhelp.Incurrentrowformat,BLOBprefix......
  • 20240709(byte数据转换、字典数据选择性保留、选择性查询数据库)
    需要补的知识:​ 1.HTTP协议,url里,那些header、body里都是啥东西报错信息:"服务异常'bytes'objecthasnoattribute'get'"错误原因:​ http传输中,GET方法传入的是byte格式的数据,没有.get方法#假设你有一个包含JSON数据的字节字符串json_bytes=b'{"name":"John",&quo......