C语言输入输出格式

Python017

C语言输入输出格式,第1张

在C语言中,输入使用的是scanf函数,scanf函数的格式为scanf(格式控制,地址列表),如scanf("%d"&a)。

输出使用的是printf()函数,printf函数的格式为printf(格式控制,输出表列),如printf("%d\n",a)。在输出时可以在"%"和字母之间插进数字表示最大场宽。可以根据需要输出数字的位数来决定“%”前的数值。

如:%3d表示输出3位整型数, 不够3位右对齐。

%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为7,小数点占一位, 不够9位右对齐。

%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

扩展资料

C语言输入输出时的规则:

一、格式说明符个数与输入数据个数不相等的情况:

当我们输入数据时,只要没有按回车键,所输入的数据都还存放在缓冲区,并没有存入变量中。按【Enter】键后,scanf()函数才会从缓冲区中取走数据。缓冲区是一个先进先出的队列,即取走数据的时候,遵循先输入的数据先取走的原则。

scanf函数的格式说明符有几个就要取几次数据,只要碰到格式说明符就必须把数据取走,至于是不是要把取走的数据存放起来,就得看数据列表中的数据个数。没取完的数据继续留在缓冲区中。

二、宽度输出的情况:

1、在%和格式字符之间加入一个整数来控制输出数据所占宽度

2、在%和格式字符f之间加入一个“整数1. 整数2”来控制输出数据的格式。

整数1:整个输出数据占的总宽度

整数2:输出实数的小数部分的个数

注意:先用整数2处理小数部分,再用整数1处理整个数据,包括已处理好的小数部分

三、宽度输入的情况:

宽度输入指的是在%和格式说明符d之间加入一个整数。如:scanf("%2d", &x)

注意:

1、%d与%1d是不同的,它们具有不同的含义。

2、 当宽度小于数据的实际宽度时,截取指定宽度的部分作为一个数进入缓冲区,再将剩余部分作为另一个数放入缓冲区。

参考资料来源:百度百科——scanf

百度百科——printf()

printf() 函数输出数据,也就是类似于上面图中的输出设备。它可以通过格式控制字符输出多个任意类型的数据。

%d表示int类型的值的例子如下:

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

结果为:a=1,b=2

其中第一个%d会用第一个变量的值来代替,第二个%d会用第二个变量的值来代替。如果还有,则以此类推就可以。

在c语言中printf函数中,可以使用\n来进行语句换行,\n是一个转义字符常量,它相当于一个换行符。

比如下面的代码:

printf("hello\nWorld\n")程序在执行时,会先将hello字符串以一行输出,再另一行输出World字符串。

扩展资料

1、对于字符串,它指定打印的字符的最大个数。

2、对于整数,它指定打印的数字位数(必要时可加填充位 0 以达到宽度要求。

3、对于转换字符为 e、E 或 f,它指定打印的小数点后的数字位数。

4、对于转换字符为 g 或 G,它指定打印的有效数字位数。

1.d格式符,用来输出十进制整数.

⑴%d,按整型数据的实际长度输出.

⑵%md,m为指定的输出字段的宽度,数据位数小于m,左边补空格,若大于m,按实际长度输出

⑶%ld,输出长整型数据(long)

2.o格式符,以八进制输出整数(不带符号,他将符号位也作为八进制数的一部分了)

⑴%o,参考%d的解释.

⑵%lo,参考%ld的解释.

⑶%mo,参考%md的解释.

3.x,X格式符,以十六进制输出整数

也是3种参考%d的解释.

4.u格式符,用来将unsigned型数据,既无符号数,以十进制形式输出

5.c格式符,输出一个字符.

6.s格式符,输出一个字符串.

⑴%s,如printf("%s","CHINA")

⑵%ms,输出的字符串占m列,字符串长度小于m,左边补空格,如果超出则全部输出.

⑶%-ms,串小于m,则在m列范围内字符串左靠,右补空格.

⑷%m.ns,输出占m列,但只取字符串左端n个字符.这n个字符输出在m列的右边,然后左边补空格.

⑸%-m.ns,和上面的放下,就是n个字符输出在m列的左侧,右边补空格.n>m,那么m自动取n的值,既保证n个字符正常输出.

7.f格式符,用来输出实数,以小数形式输出.

⑴%f,全部输出,而且输出6位小数.

⑵%m.nf,输出数据共占m列,n位小数,如果数据长度小于m那么左边补空格

⑶%-m.nf,和上面的m.nf相反,为左靠齐,右补空格.

8.e,E格式符,以指数形式输出实数

⑴%e,不指定输出数据所占的宽度和数字部分的小数位数.

⑵%m.ne和%-m.ne,这里n指小数部分的位数

9.g,G格式符,用来输出实数,它根据数值大小,自动选择f格式还是e格式,(选占宽最少的一种),且不输出无意义的0.这种格式用的不多.