首页 > 代码库 > printf中的使用(c语言)
printf中的使用(c语言)
#include <stdio.h> int main(int argc, const char * argv[]) { //整形输出 printf("%d,%d",3,4); printf("\n"); //整形输出的字符宽度。%md printf("%4d,%4d",3,4); printf("\n"); //长整形的格式输出 printf("%ld,%ld",(long)3,(long)4); printf("\n"); //长整形相同能够设置输出的字符宽度 printf("%8ld,%8ld",(long)3,(long)4); printf("\n"); //按8进制的格式输出%o int a = -1; printf("%d,%o",a,a); printf("\n"); printf("%d,%13o",a,a); //设置字符的输出宽度 //-1 在内存中得 存放形式是(以补码的方式存在):eg:111111111(第一位为符号位) printf("\n"); //x符号输出16进制 int b = -1; printf("%x,%o,%d",b,b,b); printf("\n"); //u为无符号输出 int c = -1; unsigned int d = 65535; printf("%x,%o,%d,%u",c,c,c,c); printf("\n"); printf("%x,%o,%d,%u",d,d,d,d); printf("\n"); //c格式符,输出一个字符 char e = ‘a‘; printf("%c,%d",e,e); printf("\n"); //s格式符,用来输出一个字符串 // char f[]="china"; // prinf("%s",f); #warning 输出字符串有问题 //f格式符,用来输出实数(包含:单精度、双精度),以小数的形式输出 //1、%f格式符。不指定字段的宽度,有系统自己主动指定,使整数部分所有输出,而且输出6位小数。注意:输出数字中并不是所有数字都是有效数字,单精度实数有效位通常是7位。
双精度有效位为16位。给出小数6位。 // float x,y; // x = 11111111.111;y=22222222,222; // printf("%f \n",x+y); //从结果能够看出来仅仅有7位是有效的。
double x,y; x = 11111111.111;y=22222222.222; printf("%f \n",x+y); //2、%m.nf,指定输出的数据供占有m列。当中小数位n位,假设数值大于m。就会在左边不空格。 //3、%-m.nf与%m.nf基本相同。仅仅是输出的数值向左端靠,右端补空格。 //符号e,以指数的形式输出 //1、%e,不指定输出数据所占有的宽度,和数字部分的小数的位数,有的c编译系统自己主动指出给出的数字是小数部分为6位,指数部分为5位。(eg:+002) printf("%e",12389.454566);//而这个系统是默认栈4位 printf("\n"); //%m.ne和%-m.ne,中的m,n,- 和前面的一样。 double f = 123.456; printf("%e %10e %10.2e %.2e %-10.2e",f,f,f,f,f); printf("\n"); //格式符g,用来输出实数,它依据数字的大小,自己主动选取f格式或者e格式 double g = 123.456; printf("%f %e %g",g,g,g); printf("\n"); double h = 1234567123.456; printf("%f %e %g",h,h,h); //注意:一个格式符以%开头,以上面的格式符之中的一个结尾。
中间能够插入附加的修饰符,事实上就是普通的字符 // printf("c=%cf=%fs=%s",c,f,s);//事实上f=是普通的字符 printf("\n"); //输出%符号 printf("%f%%",1.0/3); getchar(); return 0; }
以下是对应的一些格式符号输出的图片:输出
以下是转义字符的使用“\”
printf中的使用(c语言)