【C语言格式输出详解】

C语言格式输出详解

在 C 语言中,格式输出主要依靠 printf 函数来实现。以下是一些 C 语言格式输出的代码举例及相关说明。

printf("%2d",123),因为输出的部分有三位数,但是要求的有两位,所以原样输出为:123;printf(“%5d”,123),由于输出的部分有三位,但是要求 5 位。不足的左边补空格,所以输出为: 123(这里前面有两个空格)。

printf("%10f",1.66),%f 输出,前面不指定小数位数的,就补足 6 位小数。前面指定小数位数的,按照指定小数位数输出。这个要求是 printf 函数内部的规定,就相当于它的一个 case 语句的 default。只要不指定,默认就是 6 位小数f。 前面是整数的,就是没指定小数位,只指定了总宽度。10f 就输出总宽是 10(包括符号,小数点,数字),不够在前面补空格。所以输出为: 1.660000。

printf("%5.3f",1.66),小数三位,整个数为 5 位(其中小数点也算一位),所以输出结果为:1.660。

printf("%3.1f",1.66),小数 1 位,整体三位(此时要进行四舍五入),所以输出为:1.7。

示例代码还有:printf(“格式输出控制表列”,输出参数表列),格式输出控制表列包括普通字符和格式字符组成,普通字符如:hello,world;格式字符以%开头,后跟一个字符表示数据类型。如:%d,%f 等。输出参数表列在控制表列中如果没有格式字符,可以省略。如:

printf("Hello,world!")printf("%d",100)printf("521%d!",1314)

格式控制符方面,%d 是以十进制在屏幕上显示输出参数表列的值。

%c 用于输出字符,例如:

#include<stdio.h>
#include<stdlib.h>
int main() { char a;scanf("%c",&a);printf("%c\n",a);system("pause");return 0;}

%d 用于有符号十进制整数,如:

#include<stdio.h>
#include<stdlib.h>
int main() { int a;scanf("%d",&a);printf("%d\n",a);system("pause");return 0;
}

%f 用于浮点数,如:

#include<stdio.h>
#include<stdlib.h>
int main() { float a;scanf("%f",&a);printf("%f\n",a);system("pause");return 0;
}

%o 用于八进制整数,如:

#include<stdio.h>
#include<stdlib.h>
int main() { int a;scanf("%d",&a);printf("%o\n",a);system("pause");return 0;
}

%x 用于十六进制整数,如:

#include<stdio.h>
#include<stdlib.h>
int main() { int a;scanf("%d",&a);printf("%x\n",a);system("pause");return 0;
}

%s 用于字符串,如:

#include<stdio.h>
#include<stdlib.h>
int main() { char a;gets(a);printf("%s\n",a);system("pause");return 0;
}

f 格式符指定数据宽度和小数位数,用%m.nf。m 指定数据宽度,n 指定小数位数。例:

#include<stdio.h>
#include<stdlib.h>
int main() { float a;scanf("%f",&a);printf("%20.15f\n",a/3);system("pause");return 0;
} 

%20.15f 指定数据宽度为 20 位,小数位数 15 位,可以看出,整数部分 33 前面还有两个空格。算上小数点一共是 20 个位置。另:在用%f 输出时要注意数据本身能提供的有效数字,如 float 型数据存储单元只能保证 6 位有效数字。double 型数据能保证 15 位有效数字。

printf("%8d", i)可以输出整数 i,让它占至少 8 个字符的宽度(即场宽为 8):如果 i 不够 8 位则在左边补空格使它右对齐满 8 位,如果 i 的输出的位数 ≥ 8,则输出整个 i。printf("%08d",i)则表示如果 i 不够 8 位则在左边补 0。同理,printf("%8s", s) 可以输出字符串 s,使 s 在 8 个字符长的区域中右对齐,如果 s 多于 8 位则会输出整个字符串 s。如果你想左对齐则只要在 8 前加上 - 即可。8 改成其它数都可以。

c语言printf函数输出整数代码举例

在 C 语言中,使用 printf 函数输出整数可以按照以下方式进行。例如:

#include <stdio.h>
int main() {int number;// printf() 输出字符串printf("输入一个整数: ");// scanf() 格式化输入scanf("%d", &number);// printf() 显示格式化输入printf("你输入的整数是: %d", number);return 0;
}

在上述代码中,首先定义了一个整数变量number。然后通过printf函数输出提示信息,要求用户输入一个整数。接着使用scanf函数接收用户输入,并将输入的值存储到number变量中。最后再次使用printf函数输出用户输入的整数。

还可以这样输出整数:

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

这里先定义了一个整数a并赋值为 2。第一个printf直接输出整数a的值。第二个printf中的%4d表示输出的整数占 4 位宽度,如果数据位小于 4 时,数据靠右输出,左边补空格。

c语言printf函数输出浮点数代码举例

C 语言中输出浮点数可以使用printf函数,以下是一些代码举例。

#include <stdio.h>
int main() {float pi = 3.141592;printf("%.2f", pi);return 0;
}

在这个例子中,定义了一个浮点数变量pi,并使用printf函数以两位小数精度输出浮点数。其中%.2f指定要以两位小数精度输出浮点数。

还可以这样输出浮点数:

#include <stdio.h>
int main() {double ff = 70001.538;printf("ff=%lf=\n", ff);printf("ff=%.4lf=\n", ff);printf("ff=%11.4lf=\n", ff);printf("ff=%8.4lf=\n", ff);return 0;
}

这里定义了一个双精度浮点数ff,然后分别使用不同的格式输出。第一个printf以普通方式输出双精度浮点数。第二个printf输出时保留四位小数。第三个和第四个printf中,%11.4lf%8.4lf指定输出数据整数部分和小数部分共占一定位数,其中有四位是小数,如果数值长度小于指定宽度,则左端补空格,若数值长度大于指定宽度,则按实际位数输出。

c语言printf函数输出字符代码举例

以下是使用 C 语言的printf函数输出字符的代码示例。

#include <stdio.h>
int main() {char c;c = 'A';printf("c 的值为 %c", c);return 0;
}

在这个例子中,首先声明一个字符变量c,然后将字符A赋值给c。最后使用printf函数以%c的格式输出字符变量c的值。

c语言printf函数输出八进制整数代码举例

C 语言中可以使用printf函数输出八进制整数,如下所示:

#include <stdio.h>
int main() {int a = 45;printf("888888 %o\n", a);return 0;
}

在这个例子中,定义了一个整数变量a并赋值为 45。然后使用printf函数以八进制形式输出整数a的值,其中%o是输出八进制整数的格式控制符。

c语言printf函数输出十六进制整数代码举例

以下是用 C 语言的printf函数输出十六进制整数的代码示例:

#include <stdio.h>
int main() {int a = 45;printf("x 的十六进制表示为:0x%x\n", a);return 0;
}

这里定义了一个整数变量a并赋值为 45。使用printf函数输出十六进制整数时,使用%x%X,其中%x用于输出小写字母表示的十六进制数,%X用于输出大写字母表示的十六进制数。这里还在格式化字符串中添加了0x前缀,使输出的十六进制数带有前缀。

c语言printf函数输出字符串代码举例

使用 C 语言的printf函数输出字符串可以这样做:

#include <stdio.h>
int main() {char str[] = "Hello, World!";printf("%s", str);return 0;
}

在这个例子中,定义了一个字符数组str并初始化为"Hello, World!"。然后使用printf函数以%s的格式输出字符串。

总结

C 语言的printf函数是一个非常强大的输出函数,可以用于输出各种类型的数据。通过不同的格式控制符,可以实现对整数、浮点数、字符、八进制整数、十六进制整数和字符串的输出。在实际编程中,根据不同的需求选择合适的格式控制符,可以使输出更加清晰和准确。同时,还可以结合其他函数和语句,实现更加复杂的输出功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1545549.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

逆概率加权(R和Python案例)

逆概率加权&#xff08;Inverse Probability Weighting, IPW&#xff09;是一种统计技术&#xff0c;用于观察性研究中调整混杂变量的影响&#xff0c;以便更准确地估计因果关系。这种方法特别有用于在无法进行随机化实验的情况下&#xff0c;通过给予不同个体不同的权重&#…

2024年9月最新web3开发人员薪资情况(包括不同语言、各个国家)

2024年9月最新web3非开发人员薪资情况&#xff08;包括不同语言、各个国家&#xff09; 开发人员的薪水是多少&#xff1f; Web3 开发人员的平均年薪为 14 万至 20 万美元。 量化开发人员每年可赚 20 万至 30 万美元 高级开发人员年薪 16 万至 25.7 万美元 北美开发商年薪 …

了解云计算工作负载保护的重要性,确保数据和应用程序安全

云计算de小白 云计算技术的快速发展使数据和应用程序安全成为一种关键需求&#xff0c;而不仅仅是一种偏好。随着越来越多的客户公司将业务迁移到云端&#xff0c;保护他们的云工作负载&#xff08;指所有部署的应用程序和服务&#xff09;变得越来越重要。云工作负载保护&…

可视掏耳勺鸡肋吗?高清可视掏耳勺牌子推荐!

很多人习惯在洗漱完顺手拿一根棉签掏耳朵&#xff0c;但是棉签的表面直径大且粗糙&#xff0c;不易将耳朵深处的耳垢挖出&#xff0c;耳垢堆积在耳道深处长时间不清理会导致堵塞耳道&#xff0c;引起耳鸣甚至感染。而可视掏耳勺作为一种新型的挖耳工具&#xff0c;它的安全性也…

【java常见面试题】

IO 按照流的流向分类&#xff1a;输入流和输出流 按照操作单元分类&#xff1a;可以分为字节流和字符流 按照流的角色划分&#xff1a;节点流和处理流 所有输入流的基类&#xff1a;InputStream/Reader 字节流/字符流 所有输出流的基类&#xff1a;OutputStream/Reader 字…

用友或畅捷通设置外网访问,使用的是神卓互联内网穿透

本文将详细介绍如何使用神卓互联内网穿透技术搭建单位用友软件的访问环境&#xff0c;以实现远程办公和管理的高效便捷。 目录 一、神卓互联内网穿透技术 二、准备工作 1. 注册神卓互联账号 2. 配置用友软件服务器 三、配置神卓互联内网穿透 1. 安装并启动神卓互联客户端…

吉客云与金蝶云星空对接集成分页查询货品信息连通[标准]

吉客云与金蝶云星空对接集成分页查询货品信息连通[标准][付款单新增]-v1(付款单) 对接系统&#xff1a;吉客云 “吉客云”是一站式企业数字化解决方案系统&#xff0c;可实现业务、财务、办公、人事等一体化管理。相对于传统多套软件系统的集成方案&#xff0c;“吉客云”具有业…

【程序员提效】AI助力程序员提效:如何让AI编写代码+调试复杂代码教程

在编程的旅途中&#xff0c;程序员们常常面临各种挑战&#xff0c;尤其是在编写和维护代码时&#xff0c;难题层出不穷。&#x1f914; 尽管传统搜索引擎提供了海量信息&#xff0c;但往往让我们在无尽的例子和复杂分析中迷失&#xff0c;难以找到真正适合自己的解决方案。正因…

韦唯出席平遥国际电影展开幕式 中英文歌曲连唱尽显国际范

9月24日&#xff0c;第八届平遥国际电影展在在山西省晋中市平遥古城正式开幕。韦唯作为特邀演出嘉宾&#xff0c;参加开幕式晚会并演唱《黄土地》主题曲《女儿歌》及自己的英文单曲《All there is》两首歌曲。 韦唯刚结束“湾区升明月”2024大湾区电影音乐晚会&#xff0c;就马…

Cloudera 安装不再难:下载安装全流程指南

引言&#xff1a;之前文章《深度挖掘&#xff5c;Cloudera安装不再难&#xff01;基础环境搭建全解析》中&#xff0c;我们深入探讨了如何在企业环境中精心准备系统环境&#xff0c;为大数据平台Cloudera 搭建奠定坚实基础。今天&#xff0c;我们将正式进行Cloudera Manager的下…

出国留学:如何选对专业,匹配你的职业目标?

在全球化日益加深的今天&#xff0c;出国留学已成为许多青年学子拓宽视野、提升竞争力的重要途径。然而&#xff0c;面对琳琅满目的专业选择&#xff0c;如何找到既符合个人兴趣又能助力未来职业发展的专业&#xff0c;成为了每位准留学生必须面对的挑战。本文将为您详细解析&a…

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建 Jupyter Notebook

828华为云征文 | 云服务器Flexus X实例&#xff0c;Docker集成搭建 Jupyter Notebook Docker 部署 Jupyter Notebook 是一个方便且快速的方式&#xff0c;可以帮助你搭建一个用于数据分析、机器学习和科学计算的环境 华为云端口放行 服务器放行对应端口9955 Docker安装并配置镜…

unraid使用docker安装redis并创建密码

unraid使用docker安装redis并创建密码 一、redis简单介绍 redis基于K-V思路&#xff0c;数据存储在内存中&#xff0c;速度快&#xff0c;高效。 使用时会结合其他数据库如mysql。 二、redis安装 应用市场搜索redis&#xff0c;找下载量最高的一个即可&#xff0c;其中参数只…

大数据Hive组件安装

组件版本 组件版本Hadoop3.3.0JDK1.8.0_241Mysql5.7.25Hive3.1.2 Hadoop集群服务分布 Node1Node2Node3NameNode DataNode DataNodeDataNode NodeManager NodeManagerResourceManagerSecondaryNameNode 安装前请确定Hadoop集群服务全部启动&#xff0c;不然后续测试时会报…

2024年信息学奥赛CSP-J初赛真题详细分析

CSP-J 2024 入门组初赛第一轮初赛试题及答案解析 一、 单项选择题&#xff08;共15题&#xff0c;每题2分&#xff0c;共计30分&#xff1a;每题有且仅有一个正确选项&#xff09; 1 32 位 int 类型的存储范围是&#xff08; &#xff09; A -2147483647 ~ 2147483647B -214…

2024源代码加密软件TOP10排行榜丨保护企业源代码安全不泄露

在当今数字化的时代&#xff0c;企业的核心竞争力往往取决于其知识产权&#xff0c;特别是源代码的安全性。源代码是开发人员花费大量时间和精力编写的程序框架和算法&#xff0c;它直接决定了软件的功能和性能。一旦源代码泄露&#xff0c;可能带来巨大的商业损失和竞争压力。…

全方位办公自动化(OA)解决方案

在数字化转型的浪潮中&#xff0c;高效的办公自动化&#xff08;OA&#xff09;系统已成为现代企业管理不可或缺的一部分。为了帮助您更好地适应这一变化&#xff0c;我们精心打造了一套全方位的OA解决方案&#xff0c;旨在通过优化工作流程来提升组织的整体运营效率。 主要功能…

【鸿蒙HarmonyOS NEXT】数据存储之分布式键值数据库

【鸿蒙HarmonyOS NEXT】数据存储之分布式键值数据库 一、环境说明二、分布式键值数据库介绍三、示例代码加以说明四、小结 一、环境说明 DevEco Studio 版本&#xff1a; API版本&#xff1a;以12为主 二、分布式键值数据库介绍 KVStore简介&#xff1a; 分布式键值数据库…

Jetpack02-LiveData 数据驱动UI更新(类似EventBus)

前提 LiveData使用了Lifecycle的生命周期&#xff0c;阅读本文前&#xff0c;请先了解Lifecycle源码。 简介 LiveData本质是数据类型&#xff0c;当改变数据的时候&#xff0c;会通知观察者&#xff0c;且只在界面可见的时候才会通知观察者。只能在主线程注册观察者&#xf…

图变换器的再思考:谱注意力网络

人工智能咨询培训老师叶梓 转载标明出处 图神经网络&#xff08;GNNs&#xff09;的传统策略是通过稀疏的消息传递过程直接编码图结构。然而&#xff0c;这种方法存在固有的局限性&#xff0c;例如过度平滑和过度压缩问题&#xff0c;这些限制了模型的性能和表达能力。为了克服…