精华内容
下载资源
问答
  • c语言printf输出格式

    千次阅读 2019-06-14 22:57:33
    c语言输出格式说明: 格式说明 表示内容 %d 整型int %f 长整型long int %lf 浮点型 float %% double %5d 详见下面解释 %c 字符 char %s 字符串 %o 八进制 %#o 带前导八进制 %x 十六进制 ...

    最近C语言中遇到一些基础知识,写出来分享一下:
    一、一些基本输出格式小试

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

    在这里插入图片描述
    分析如下:
    int x=017;这个数前面有0代表八进制;八进制17其实是十进制15,所以第一个是15;
    第二个是要求输出八进制,所以输出为17;
    第三个是带前缀的八进制,所以是017;
    第四个是十六进制,十进制15的十六进制就是f;
    第五个要求输出的格式是:带前导的十六进制:十六进制是x,所以输出是:0xf

    二、c语言输出格式说明:

    格式说明 表示内容
    %d 整型int
    %f 长整型long int
    %lf 浮点型 float
    %% double
    %5d 详见下面解释
    %c 字符 char
    %s 字符串
    %o 八进制
    %#o 带前导八进制
    %x 十六进制
    %#x 带前导十六进制

    对于上面的说明:
    1、printf("&2d",123);因为输出的部分有三位数,但是要求的有两位,所以原样输出为:123
    2、printf("%5d",123);因为输出的部分有三位,但是要求5位。不足的左边补空格
    ,所以输出的为: 123(这里前面有两个空格)
    3、printf("%10f",1.66);
    %f输出,前面不指定小数位数的,就补足6位小数。前面指定小数位数的,按照指定小数位数输出。
    这个要求是printf函数内部的规定,就相当于它的一个case语句的default.
    只要不指定,默认就是6位小数。
    f前面是整数的,就是没指定小数位,只指定了总宽度。10f就输出总宽是10(包括符号,小数点,数字),不够在前面补空格。
    所以输出为: 1.660000
    4、printf("%5.3f",1.66);小数三位,整个数为5位(其中小数点也算一位),所以输出结果位:1.660
    5、printf("%3.1f",1.66);小数1位,整体三位(此时要进行四舍五入),所以输出为:1.7
    三、判断
    if(a),表示a为真时执行后续语句(即a为非零的时候)

    if(!a),表示a为假时执行后续语句(即a为零的时候)

    展开全文
  • c语言常用到的printf输出格式汇总。printf函数称为格式输出函数,其关键字最末一个字母f即为“格式”(format)之意。其功能是按用户指定的格式,把指定的数据显示到显示器屏幕上。
  • printf格式控制字5261符串,输出表4102列); 以图1所示为例。 图1. 函数参数1653包括两部分: 【1】格式控制字符串,是用双引号括起来的字符串,也称为转换控制字符串,它指定输出数据项的类型和格式。 它...

    printf函数的一般格式
    printf(格式控制字5261符串,输出表4102列);
    以图1所示为例。
    图1.


    函数参数1653包括两部分:
    【1】格式控制字符串,是用双引号括起来的字符串,也称为转换控制字符串,它指定输出数据项的类型和格式。
    它包括两种信息:


    ●格式说明项:由%和格式字符组成,如%d,%f等。格式说明总是由%字符开始,到格式字符终止。它的作用是将输出的数据项转换为指定的格式输出。输出表列中的每个数据项对应一个格式说明项。


    ● 普通字符:即需要原样输出的字符,如逗号和换行符。


    【2】输出列表,是需要输出的一些数据项,可以是表达式。
    例如:假如a=3,b=4,那么printf("a=%db=%d",a,b);,输出a=3b=4。其中两个 “%d”是格式说明,表示输出两个整数,分别对应变量a,b。“a=”,“b=”是普通字符,原样输出。


    由于printf是函数,因此,格式控制字符串和输出表列实际上都是函数的参数。printf函数的一般形式可以表示为:
    printf(参数1,参数2,参数3,…,参数n)

    printf函数的功能是将参数2到参数n按照参数1给定的格式输出。

    【3】格式字符 (构成格式说明项)
    对于不同类型的数据项,应当使用不同的格式字符构成的格式说明项。常用的有以下几种格式字符:(按不同类型数据,列出各种格式字符的常用用法)


    【d格式符】用来输出十进制整数。有以下几种用法:
    ● %d,按照数据的实际长度输出。
    ● %md,m指定输出字段的宽度 (整数)。如果数据的位数小于m,则左端补以空格(右对齐);若大于m,则按照实际位数输出。
    ● %-md,m指定输出字段的宽度 (整数)。如果数据的位数小于m,则右端补以空格 (左对齐);若大于m,则按照实际位数输出。
    ● %ld,输出长整型数据,也可以指定宽度%mld。
     

    【o格式符】以八进制形式输出整数。注意:是将内存单元中的各位的值按八进制形式输出,输出的数据不带符号,即将符号位也一起作为八进制的一部分输出。


    例如:
    inta=-1;
    printf("%d,%o,%x",a,a,a);
    -1的原码:1000,0000,0000,0001。
    -1在内存中的补码表示为:
    1111,1111,1111,1111=1,111,111,111,111,111=1,7,7,7,7,7=ffff
    输出:-1,177777,ffff


    【s格式符】用来输出一个字符串。有以下几种用法:
    ● %s,输出字符串。
    ● %ms,输出的字符串占m列,如果字符串长度大于m,则字符串全部输出;若字符串长度小于m,则左补空格 (右对齐)。
    ● %-ms,输出的字符串占m列,如果字符串长度大于m,则字符串全部输出;若字符串长度小于m,则右补空格 (左对齐)。
    ● %m.ns,输出占m列,但只取字符串左端n个字符,左补空白 (右对齐)。
    ● %-m.ns,输出占m列,但只取字符串左端n个字符,右补空白 (左对齐)。


    【 f 格式符】用来输出实数 (包括单、双精度,单双精度格式符相同),以小数形式输出。有以下几种用法:
    ● %f,不指定宽度,使整数部分全部输出,并输出6位小数。注意,并非全部数字都是有效数字,单精度实数的有效位数一般为7位 (双精度16位)。
    ● %m.nf,指定数据占m列,其中有n位小数。如果数值长度小于m,左端补空格(右对齐)。
    ● %-m.nf,指定数据占m列,其中有n位小数。如果数值长度小于m,右端补空格(左对齐)。


    【 e 格式符】以指数形式输出实数。可用以下形式表示:
    ● %e,不指定输出数据所占的宽度和小数位数,由系统自动指定。如6位小数,指数占5位,-e占1位,指数符号占1位,指数占3位。数值按照规格化指数形式输出 (小数点前必须有而且只有1位非0数字)。

    展开全文
  • C语言printf输出格式总结

    千次阅读 2019-04-17 17:43:56
    格式化规定符: %d 十进制有符号整数  %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数   %x  %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数   ...

    格式化规定符:

    %d 十进制有符号整数 
    %u 十进制无符号整数
    %f 浮点数
    %s 字符串
    %c 单个字符
    %p 指针的值
    %e 指数形式的浮点数  
    %x  %X 无符号以十六进制表示的整数
    %0 无符号以八进制表示的整数  
    %g 自动选择合适的表示法
    

    对于规定符的一些说明:

    1、对于%d:
    (1)%md: 指定输出的宽度。数据位数小于m,左端补空格;大于m,按实际位数输出。比如说%3d 表示输出3位整型数,不够3位右对齐。若想在输出值前加一些0, 就应在场宽项前加个0。例如%04d 表示在输出一个小于4位的数值时,将在前面补0使其总宽度为4位。
    (2)%ld: 输出长整型数据。
    (3)%-md:可以控制输出左对齐,没有则说明右对齐。
    2、对于%f:
    (1)%m.nf:表示最大场宽为m,小数位为n,整数为则为m-n-1,不够m为右对齐。 例如:%6.2f表示输出场宽为9的浮点数,小数点后保留2为小数,整数位为3位,小数点占一位。
    (2)%-m.nf:表示可以控制输出左对齐。
    (3)%lf:表示输出double型浮点数。
    3、对于%s
    (1)%-5s:表示输出5个字符左对齐,没有负号则右对齐。
    (2)%6.9s:表示一个长度不小于6且不大于9的字符串,若大于9,则第9个后面的字符将被删除。

    展开全文
  • 掌握 printf格式输出,对后续的学习非常有帮助。在程序中要使用 printf,必须要包含头文件 stdio.h。printf 函数的原型为:int printf(const char *format, ...);1、printf 字符串C语言入门学习时,最简单的 ...
    33c2f98a945bc63388d3a0c1b8c06b52.png

    printf 是C语言非常有用的一个函数,也是我们入门学习C语言的第一个函数。掌握 printf 的格式化输出,对后续的学习非常有帮助。

    在程序中要使用 printf,必须要包含头文件 stdio.h。printf 函数的原型为:

    int printf(const char *format, ...);

    1、printf 字符串

    C语言入门学习时,最简单的 printf 输出字符串。

    d8d9b64e1d312ba5fa1d2c8be23cd5c9.png

    printf学习的第一句

    需要注意的是:printf 中的双引号和末尾的分号必须是在英文输入法下。

    2、printf 格式化输出

    比如,printf 输出一个整型变量的值。

    821f076ed79d2d1e604543e6b1859e05.png

    变量不同进制的输出

    上图中,分别将整型变量以十进制(%d)、八进制(%o)、十六进制(%x和%X)的形式输出。

    在计算机系统中,程序中虽然写的是 x = 10,但是在内存中并不是将 10 这个十进制数存放进去,而是将 10 的二进制代码存放进去了。计算机只能执行二进制 0、1 代码,而 0、1 代码本身并没有什么实际的含义,它可以表示任何类型的数据。所以输出的时候要强调是以哪种进制形式输出。也就是要有“输出控制符”,告诉计算机应该怎样解读二进制数据。

    那什么是“输出控制符”呢?

    基本上,凡是以%开头的都是输出控制符。

    整型的格式输出

    • %d:按十进制整型数据的实际长度输出。
    • %u:输出无符号整型(unsigned)。输出无符号整型时也可以用 %d,这时是将无符号转换成有符号数,然后输出。
    • %ld:输出长整型数据。
    • %md:m 为指定的输出字段的宽度。如果数据的位数小于 m,则左端补以空格,若大于 m,则按实际位数输出。
    de4b0eb2997cbd662bb1271947dde047.png

    整型的输出

    十六进制的输出

    • %x,%#x:以十六进制形式输出整数
    5aa1d4b2051791aa444550420f1787d5.png

    十六进制的输出

    字符和字符串的输出

    • %c:输出一个字符。
    • %s:输出一个字符串。
    6aad0be6cba02918dcec0d8ca8901109.png

    字符和字符串的输出

    浮点数和指针的输出

    • %f:输出浮点数。若不指定字段宽度,则由系统自动指定,整数部分全部输出,小数部分输出 6 位,超过 6 位的四舍五入。
    • %.mf:输出浮点数时,小数点后保留 m 位。
    • %p:输出指针的值。
    44c1d7e7ea960a6eb591d29dfc9ba922.png

    浮点数和指针的输出

    printf 常用的输出控制符总结如下图所示:

    d766d3c4dd4e3601e8238bcc15fba18b.png

    printf 常用的输出控制符

    相关阅读

    C语言的标准库介绍

    C语言的数据类型介绍

    深入理解C语言的指针

    展开全文
  • /*printf输出格式*/ #include<stdio.h> #include<stdlib.h> int main() { double a = 1.0; printf("%f\n", a/3); printf("%5.2f\n", a/3);//输出多少列,其中保留几位小数(小数占几位)(右靠齐) ...
  • 1.转换说明符  %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99)  %c 字符  %d 有符号十进制整数  %f 浮点数(包括float和doulbe) ... %e(%E) 浮点数指数输出[e-(E-)记数法]  %g(%G
  • %a 浮点数、十六进制数字和p-记数法(C99)...前边的*定义的是总的宽度,后边的定义的是输出的个数。 m时,左对齐(默认右对齐) 根据n的大小,不足补0 当 |m| 时,m=n; 当 m 实际的值的宽度,原样输出
  • C语言printf输出格式控制

    千次阅读 2018-07-20 10:45:12
    C语言printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见。转一篇,改天整理。 1.转换说明符 %a(%A)浮点数、十六进制数字和p-(P-)记数法(C99) %c字符 %d有符号十进制整数 %f...
  • c语言printf()输出格式大全.doc
  • c语言printf()输出格式大全

    万次阅读 多人点赞 2019-07-04 16:19:13
    (转载)原始出处未知 1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和double) %e(%E) 浮点数指数输出[e-(E-)记数法] ...
  • C语言printf函数格式字符: 1、%d,按整型数据的实际长度输出。 2、%md,m为指定的输出字段的宽度。 3、%ld,输出长整型数据。 4、o格式符,以八进制整型式输出整数。 5、x格式符,以十六进制数形式输出整数。 6、u...
  • 可编辑文档 PAGE 页码页码/NUMPAGES 总页数总页数 c语言printf)输出格式大全 ? 1转换说明符 ? %a%A? 浮点数十六进制数字和p-(P-)记数法(C99) ? %c? 字符 ? %d? 有符号十进制整数 ? %f? 浮点数(包括float和doulbe) ? ...
  • PAGE PAGE # c语言printf) 输出格式大全 1 ?转换说明符 %a%A) 浮点数十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float 和 doulbe) %e%E) 浮点数指数输出e-(E-)记数法 %g%G) 浮点数...
  • c语言printf格式输出小细节回顾 1,printf函数的格式字符 格式字符 说明 d 以带符号的十进制形式输出 o 以无符号的八进制形式输出 X,x 以无符号的十六进制形式输出 u 以无符号的十进制形式输出 c ...
  • %#x %#x,就表示在输出时是以带0x前缀的十六进制形式输出后面的对应参数。 也就是说,它的作用和%x相同,只... %p 指针地址
  • c语言printf函数格式

    2020-05-21 16:31:30
    printf ---- 格式输出函数 printf("格式控制串", 输出表); 参数: 输出表:想要输出的数据(个数0~n) 格式控制串: %格式 --- 用对应的值替换 其他字符原样输出 例: int a = 100; printf("a = %d\n", a...
  • 对于刚接触C语言的同学来说可能会遇到这个问题因为博主也是个菜鸟经常因为搞不清楚单精度双精度还有输入输出格式的问题就这个问题也百度的很多次所以在这里总结一下分享给大家printf输出格式1.转换说明符 %a(%A) ...
  • 输入输出函数(printf 和 scanf)是C语言中非常重要的两个函数,也是学习C语言必学的两个函数。在C语言程序中,几乎没有一个程序不需要这两个函数,尤其是输出函数(printf),所以这两个函数必须要掌握。 如果在...
  • c语言printf输出格式

    2019-03-24 15:33:52
    %d 有符号的十进制数 %c 字符 %p 指针 %f 浮点数(float和double) %s 字符串 %i 同%d %u 无符号的十进制数 ...
  • C语言printf格式输出

    千次阅读 2020-02-29 10:45:13
    C语言容易忘记的知识点

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,269
精华内容 1,307
关键字:

c语言printf输出格式

c语言 订阅