C语言中的 %2d是什么意思

为什么是%2d,不是%d如下printf("%d,%d,%2d"),b,a,a*b;就是a*b为什么不是%d... 为什么是%2d,不是%d
如下
printf("%d,%d,%2d"),b,a,a*b;
就是a*b为什么不是%d
展开
 我来答
百度网友14dc635
高粉答主

推荐于2019-08-07 · 繁杂信息太多,你要学会辨别
知道答主
回答量:145
采纳率:100%
帮助的人:5.3万
展开全部

修饰符 格式说明、意义

M %md 以宽度m输出整型数,不足m时,左补空格

0m %0md 以宽度m输出整型数,不足m时,左补零

m,n %m.nf 以宽度m输出实型小数,小数位为n位

例如:设i = 123,a = 12.34567,则:

printf("%4d +++ %5.2f",i,a);

输出: 123 +++ 12.35

printf("%2d +++ %2.1f",i,a ) ;

输出:

123 +++ 12.3

当指定场宽小于数据的实际宽度时,对整数,按该数的实际场宽输出,对浮点数,相应小数位的数四舍五入。

扩展资料:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

特有特点

1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。

2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。

3、不同的变量类型可以用结构体(struct)组合在一起。

4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。

5、部份的变量类型可以转换,例如整型和字符型变量。

6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。

7、预编译处理(preprocessor)让C语言的编译更具有弹性。

参考资料来源:百度百科:C语言

写在枫叶上的故事
2019-05-11 · TA获得超过2.6万个赞
知道答主
回答量:164
采纳率:0%
帮助的人:2.4万
展开全部

C语言中的% 2d是printf()函数的输出格式中的%a.bf,表示将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格。

如:

1、“%8d ”要求输出宽度为8,而a值为15只有两位故补三个空格。

2、“%6.3lf”指定输出宽度为6,精度为3,由于实际长度超过6故应该按实际位数输出,小数位数超过3位部分被截去。

3、“%8.4lf ”由于指定精度为4位故截去了超过4位的部分。

扩展资料

C语言中%2d等格式字符串的一般形式为:[标志][输出最小宽度][.精度][长度]类型。(其中方括号[]中的项为可选项)。%2d等格式字符串的规则为:

1、在"%"和字母之间插进数字表示最大场宽。例如: %3d 表示输出3位整型数, 不够3位右对齐。%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为7,小数点占一位, 不够9位右对齐。%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

2、如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。 

3、若想在输出值前加一些0, 就应在场宽项前加个0。

参考资料来源:百度百科——printf()

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
四舍五不入6
高粉答主

2019-11-13 · 醉心答题,欢迎关注
知道答主
回答量:147
采纳率:100%
帮助的人:2.1万
展开全部

C语言中的% 2d是printf()函数的输出格式中的%a.bf。

表示将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格。如:

1、“%8d ”要求输出宽度为8,而a值为15只有两位故补三个空格。

2、“%6.3lf”指定输出宽度为6,精度为3,由于实际长度超过6故应该按实际位数输出,小数位数超过3位部分被截去。

扩展资料:

C语言函数

int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0

int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0

int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0

int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0

double cabs(struct complex znum) 返回复数znum的绝对值

参考资料来源:百度百科-C语言函数

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龍__鳳
推荐于2017-09-15 · TA获得超过2346个赞
知道小有建树答主
回答量:948
采纳率:0%
帮助的人:1393万
展开全部

%2d是输出格式,输出的数至少占2位

你看a*b的输出结果就知道了

这个不是规定必须是%2d,也可以是%d

追问
字符型的是不是%.2d
追答
字符型的%c,字符串是%s,浮点是%f
%.2d是输出05,也就是说不足2位时,左补0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天云小店
推荐于2017-09-16 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:765万
展开全部

%2d是C语言中printf函数的输出格式说明符。


具体解释如下:

使输出的int型的数值以2位的固定位宽输出。如果不足2位,则在前面补空格;如果超过2位,则按实际位数输出。

注:如果输出的数值不是int型,则进行强制类型转换为int,之后按上面的格式输出。


举例如下:

printf("%2d", 12);     // 输出12
printf("%2d", 1);      // 输出 _1  (_代表空格)
printf("%2d", 122);    // 输出122
printf("%2d", 12.72);  // 输出12   (强制类型转换,即取整数部分)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式