c语言里%d,为什么有的是%d⼀n,区别是什么?

2024-11-07 18:42:06
推荐回答(5个)
回答(1):

%d %f是打印变量的类型。

%d是整数类型。用来输出十进制整数,按整型数据的实际长度输出。

%f是浮点类型(就是含小数点的,默认为6位) 

\n是表示回车,即,转到下一行。

它的意义多表现在有多个printf的时候,为了不混淆,一般每个printf的内容占一行。

C语言中对于不同类型的数据用不同的格式字符,%d %f是printf函数格式字符。

拓展资料:

在C语言中:printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。

printf()函数的调用格式为: printf("<格式化字符串>", <参量表>)。

格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。

要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。

C语言中printf函数的介绍以及使用



回答(2):

%d为整型输出,%d比%d/n多了一个“/n”换行符,这样前者在下一次的输出会紧接在本次输出内容后,而后者下一次输出会在下一行首开始。

如:

int a,=10;b=5;

printf("%d\n,%d",a,b);

输出:

10

5

扩展资料


C语言中%s,%x,%f,%.100f,%的意思:

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

格式字符有d,o,x,u,c,s,f,e,g等。

%o以八进制数形式输出整数,

%x以十六进制数形式输出整数,或输出字符串的地址。

%u以十进制数输出unsigned型数据(无符号数)。注意:%d与%u有无符号的数值范围,也就是极限的值,不然数值打印出来会有误。

%c用来输出一个字符,

%s用来输出一个字符串,

%f用来输出实数,以小数形式输出,默认情况下保留小数点6位。

%.100f用来输出实数,保留小数点100位。

%e以指数形式输出实数,

%g根据大小自动选f格式或e格式,且不输出无意义的零。

百度百科-占位符

回答(3):

区别在于两者定义的输出不同,%d控制的输出不换行,而%d/n控制的输出要换行。/n是转义字符,控制换行。

例如:int a,=2;b=5;

printf("%d,%d",a,b);

输出结果为:
2  5

而int a,=2;b=5;

printf("%d,%d",a,b);

输出结果为:

2

5

扩展资料:

/n是转义字符中的一种,而转义有2种情况:

(1)将普通字符转为特殊用途,一般是编程语言中,用于表示不能直接显示的字符,比如后退键,回车键,等。

(2)用来将特殊意义的字符转换回它原来的意义。

转义字符串(Escape String),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。

比如,要显示小于号(<),就可以写 < 或者 < 。

用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。

提示:实体名称(Entity)是区分大小写的。

备注:同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。

常用转义字符及含义如下图:

参考资料:转义字符_百度百科

回答(4):

%d:输出的是整形字符

/n:换行符,即输出结果需要换行

%d和%d/n的区别就在于,%d下一次的输入会紧接着本次的输出内容后,而%d/n下一次的输出会换行,在下一行的显示。

例如:

int a=6;b=7;

print("%d/n,%d",a,b)

输出:

6

7

扩展资料

C语言中%d,%p,%u,%lu等都有什么用处

%d       有符号10进制整数(%ld 长整型,%hd短整型 )

%hu   无符号短整形(%u无符号整形,%lu无符号长整形)

%i    有符号10进制整数 (%i 和%d 没有区别,%i 是老式写法,都是整型格式)

%o   无符号8进制整数 

%u   无符号10进制整数 

%x   无符号的16进制数字,并以小写abcdef表示

%X     无符号的16进制数字,并以大写ABCDEF表示

%f    输入输出为浮点型 (%lf双精度浮点型)

%E/e     用科学表示格式的浮点数

%c        输入输出为单个字符 

%s        输入输出为字符串

回答(5):

你写的有问题吧。应该是:%d\n吧? %d是要求输出(或者输入)的数据格式是有符号十进制整数,加了\n之后,代表的是,输出的时候结果会自动的换到下一行。如果是输入语句里面,比如:scanf("%d\n",&a);那就麻烦了。因为\n可以代表无数个回车符。