以输出为例:
#include <stdio.h> main() { printf("**进制******************************************************\n"); int n1=15; printf("二进制 : 无\n");// binary printf("八进制o : %o\n", n1);// octal printf("十进制d : %d\n", n1);// decimal printf("十六进制x: %x\n", n1);// hex printf("十六进制X: %X\n", n1);// 十六进制分大小 printf("**整数******************************************************\n"); // i有符号 printf("d有符号 : %d\n", -1); printf("i有符号 : %i\n", -1); // u 无符号(unsigned) printf("u无符号: %u\n", 1); printf("u无符号: %u\n", -1); // 长短 (不必挣个长短,因为没有必要) printf("长整形ld: %ld\n", 2147483647);// 此电脑int和long都是4字节,看不出区别 printf("短整形hd: %hd\n", 1);// 没什么用,注意l,都要加d printf("**浮点数******************************************************\n"); // 用科学表计数法 printf("e %e\n", 12.5); printf("E %E\n", 12.5); printf("**字符串******************************************************\n"); printf("字符c %c\n", 'a'); printf("字符串s %s\n", "abc"); printf("**指针******************************************************\n"); int i = 1; printf("指针p:%p\n", &i); printf("相当于X:0X%X\n",&i); printf("**补齐******************************************************\n"); printf("5d: %5d\n", 12);// 右对齐 printf("05: %05d\n", 12); printf(".5: %.5d\n", 12);//05等价于.5 printf("-5: %-5d结束\n", 12);// 左对齐 // 带点至少6位,点后必须3位 printf("%06.3f\n",2.1); printf("%06.3f\n",98765.4321); }
运行结果:
**进制******************************************************
二进制 : 无
八进制o : 17
十进制d : 15
十六进制x: f
十六进制X: F
**整数******************************************************
d有符号 : -1
i有符号 : -1
u无符号: 1
u无符号: 4294967295
长整形ld: 2147483647
短整形hd: 1
**浮点数******************************************************
e 1.250000e+001
E 1.250000E+001
**字符串******************************************************
字符c a
字符串s abc
**指针******************************************************
指针p:000000000022FE48
相当于X:0X22FE48
**补齐******************************************************
5d: 12
05: 00012
.5: 00012
-5: 12 结束
02.100
98765.432
浮点数输出(十分玄幻):
网上说法1:float用%f,double用%Lf,没有long double
网上说法2:long double用%Lf
Dev-C++实测,对于float和double,加不加l都可以,对于long double,都搞不定
#include <stdio.h> main() { float f= 3.4E+38; double db = 1.7E+308; long double ldb = 1.1E+4932; printf("浮点数: %f\n", f); printf("浮点数: %lf\n", f); printf("********************************************************\n"); printf("浮点数: %f\n", db); printf("浮点数: %lf\n", db); printf("********************************************************\n"); printf("浮点数: %f\n", ldb); printf("浮点数: %lf\n", ldb); }