12、printf-函數(shù)
// 1.指定位寬
如何指定位寬? %mi; // 其中m就是為空,而i輸出對(duì)應(yīng)類型的數(shù)據(jù)默認(rèn)情況下位寬是右對(duì)齊,如果需要輸出的類型寬度不夠,會(huì)在左邊補(bǔ)空格
如果在位寬前面加上-號(hào),就會(huì)改變位寬的對(duì)齊方式為左對(duì)齊,如果需要輸出的類型寬度不夠,會(huì)在右邊補(bǔ)空格
注意 : 如果指定了位寬, 但實(shí)際輸出的內(nèi)容超出了寬度, 會(huì)按照實(shí)際的寬度來輸出
int number = 1; printf("%02i\n",number); // 01
float floatValue = 3.1415926;
printf("%.*f",5,floatValue); // 指定打印的小數(shù)位數(shù)
#include <stdio.h>
int main()
{
// 折疊代碼的快捷鍵 : command + option + 方向鍵
// 單行注釋的快捷鍵 : command + \
/*
int number = 10;
int value = 20;
printf("%i ,%i\n",number,value);
float floatValue = 10.1f;
printf("%f\n",floatValue);
char charValue = 'a';
printf("%c\n",charValue);
double doubleValue = 9.9;
printf("%lf",doubleValue);
*/
// 1.指定位寬
// 如何指定位寬? %mi; // 其中m就是為空,而i輸出對(duì)應(yīng)類型的數(shù)據(jù)
// 默認(rèn)情況下位寬是右對(duì)齊,如果需要輸出的類型寬度不夠,會(huì)在左邊補(bǔ)空格
// 如果在位寬前面加上-號(hào),就會(huì)改變位寬的對(duì)齊方式為左對(duì)齊,如果需要輸出的類型寬度不夠,會(huì)在右邊補(bǔ)空格
// int number = 99;
// printf("%i\n",number);
// printf("%5i\n",number);
// printf("%-5i!!!\n",number);
// 注意 : 如果指定了位寬, 但實(shí)際輸出的內(nèi)容超出了寬度, 會(huì)按照實(shí)際的寬度來輸出
// int number = 9999;
// printf("%2i\n",number);
// printf("%5i\n",number);
// 可以在位寬前面加上0,如果輸出的內(nèi)容寬度不夠就會(huì)用0來補(bǔ),如果寬度已經(jīng)夠了,那么會(huì)按照實(shí)際的寬度輸出
/*
int number = 1;
// 01
// 2015-05-05
printf("%02i\n",number);
*/
// 2. 保留位數(shù)
// %f 默認(rèn)會(huì)保留6位小數(shù)
// 指定保留多少位小數(shù) : %.nf , 其中n就是需要保留多少位小數(shù), f用于輸出實(shí)型
/*
float floatValue = 3.14;
printf("%.2f",floatValue);
*/
// 3.%f各種坑
// 為什么指定保留10位之后還是不對(duì)呢, 因?yàn)閒loat類型 有效位數(shù)
// 如何計(jì)算有效位數(shù)? 從第一個(gè)數(shù)開始計(jì)算
// 如果輸出的數(shù)據(jù)超出了有效位數(shù), 那么就會(huì)出現(xiàn)一些垃圾數(shù)據(jù)
/*
float floatValue = 3.1415926525; // 3.1415927410
printf("%12.10f\n",floatValue); // 輸出一個(gè)位寬為12的數(shù)據(jù)類型
// 如果想完整的輸出 那么必須將數(shù)據(jù)保存位double類型, 因?yàn)閐ouble有效位為15
double doubleValue = 3.1415926525; // 3.1415926525
printf("%.10lf\n",doubleValue);
*/
// 如何提交逼格
float floatValue = 3.1415926;
printf("%.*f",5,floatValue);
return 0;
}