zoukankan      html  css  js  c++  java
  • printf()函数

    基本知识:

              转换说明及作为结果的打印输出
    %a                浮点数、十六进制数字和p-记数法(C99)
    %A    浮点数、十六进制数字和p-记法(C99)
    %c    一个字符 
    %d    有符号十进制整数 
    %e    浮点数、e-记数法
    %E    浮点数、E-记数法
    %f    浮点数、十进制记数法  
    %g    根据数值不同自动选择%f或%e.
    %G    根据数值不同自动选择%f或%e.
    %i               有符号十进制数(与%d相同)
    %o    无符号八进制整数
    %p    指针    
    %s    字符串
    %u    无符号十进制整数
    %x    使用十六进制数字0f的无符号十六进制整数 
    %X    使用十六进制数字0f的无符号十六进制整数
    %%    打印一个百分号
      使用printf ()函数
     printf()的基本形式: printf("格式控制字符串",变量列表);

    举例说明

    View Code
    1 #include<cstdio>
    2 int main()
    3 {
    4 //for int(整形)
    5 int i=30122121;
    6 long i2=309095024l;
    7 short i3=30;
    8 unsigned i4=2123453;
    9 printf("%d,%o,%x,%X,%ld,%hd,%u\n",i,i,i,i,i2,i3,i4);//如果是:%l,%h,则输不出结果
    10 printf("%d,%ld\n",i,i2);//试验不出%ld和%d之间的差别,因为long是4bytes
    11 printf("%hd,%hd\n\n\n",i,i3);//试验了%hd和%d之间的差别,因为short是2bytes
    12
    13 //for string and char(字符)
    14 char ch1='d';
    15 unsigned char ch2=160;
    16 char str[100]="Hello everyone!";
    17 printf("%c,%u,%s\n\n\n",ch1,ch2,str);//unsigned char超过128的没有字符对应
    18
    19 //for float and double,unsigned and signed can not be used with double and float
    20 float fl=2.566545445F;//or 2.566545445f
    21 double dl=265.5651445;
    22 long double dl2=2.5654441454;
    23
    24 //%g没有e格式,默认6位包括小数点前面的数,
    25 //%f没有e格式,默认6位仅只小数点后面包含6位
    26 //%e采用e格式,默认6位为转化后的小数点后面的6位
    27 printf("%f,%e,%g,%.7f\n",fl,dl,dl,dl);
    28 printf("%f,%E,%G,%f\n",fl,dl,dl,dl);//%F is wrong
    29 printf("%.8f,%.10e\n",fl,dl);
    30 printf("%.8e,%.10f\n\n\n",fl,dl);
    31
    32 //for point
    33 int *iP=&i;
    34 char *iP1=new char;
    35 void *iP2;//dangerous!
    36 printf("%p,%p,%p\n\n\n",iP,iP1,iP2);
    37
    38 //其他知识:负号,表示左对齐(默认是右对齐);%6.3,6表示宽度,3表示精度
    39 char s[20]="Hello world!";
    40 printf(":%s: \n:%10s: \n:%.10s: \n:%-10s: \n:%.15s: \n:%-15s: \n:%15.10s: \n:%-15.10s:\n\n\n",
    41 s,s,s,s,s,s,s,s);
    42 double ddd=563.908556444;
    43 printf(":%g: \n:%10g: \n:%.10g: \n:%-10g: \n:%.15g: \n:%-15g: \n:%15.10g: \n:%-15.10g:\n\n\n",
    44 ddd,ddd,ddd,ddd,ddd,ddd,ddd,ddd);
    45
    46 //还有一个特殊的格式%*.* ,这两个星号的值分别由第二个和第三个参数的值指定
    47 printf("%.*s \n", 8, "abcdefgggggg");
    48 printf("%*.*f \n", 3,3, 1.25456f);
    49
    50 return 0;
    51 }

  • 相关阅读:
    hdu 3666 差分约束系统
    hdu 1198农田灌溉
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    高等微積分(高木貞治) 1.4節 例2
    常微分方程(阿諾爾德) Page 45 相空間,相流,運動,相曲線 註記
    解析函數論 Page 29 命題(2) 函數模的有界性
    高等微積分(高木貞治) 1.4節 例2
    解析函數論 Page 29 命題(1) 有界閉集上的一致連續性
    解析函數論 Page 29 命題(3) 模的下界的可達性
    解析函數論 Page 29 命題(2) 函數模的有界性
  • 原文地址:https://www.cnblogs.com/jian1573/p/2013038.html
Copyright © 2011-2022 走看看