① c 語言中%2d(%2d%%)什麼意思
%2d就是寬度2 輸出整數
%2d%% 就是輸出寬度2整數 後面帶個%號 %% 輸出就是%
② c語言輸出附加格式說明字元怎麼用
C語言基本的輸出格式說明符如下:
%d十進制有符號整數
%u十進制無符號整數
%f浮點數
%s字元串
%c單個字元
%p指針的值
%e指數形式的浮點數
%x,%X無符號以十六進製表示的整數
%0無符號以八進製表示的整數
%g自動選擇合適的表示法
說明:
1、可以在"%"和字母之間插進數字表示最大場寬。例如:
%3d表示輸出3位整型數,不夠3位右對齊。
%9.2f表示輸出場寬為9的浮點數,其中小數位為2,整數位為6,小數點佔一位,不夠9位右對齊。
%8s表示輸出8個字元的字元串,不夠8個字元右對齊。
如果字元串的長度、或整型數位數超過說明的場寬,將按其實際長度輸出,
但對浮點數,若整數部分位數超過了說明的整數位寬度,將按實際整數位輸出;
若小數部分位數超過了說明的小數位寬度,則按說明的寬度以四捨五入輸出。
2、可以在"%"和字母之間加小寫字母l,表示輸出的是長型數。例如:
%ld表示輸出long整數
%lf表示輸出double浮點數
3、可以控制輸出左對齊或右對齊,即在"%"和字母之間加入一個"-"號可說明輸出為左對齊,否則為右對齊。例如:
%-7d表示輸出7位整數左對齊
%-10s表示輸出10個字元左對齊
使用方法可以參考如下程序:
#include<stdio.h>
#include<string.h>
intmain()
{
charc,s[20],*p;
inta=1234,*i;
floatf=3.141592653589;
doublex=0.12345678987654321;
p="Howdoyoudo";
strcpy(s,"Hello,Comrade");
*i=12;
c='x41';
printf("a=%d ",a);/*結果輸出十進制整數a=1234*/
printf("a=%6d ",a);/*結果輸出6位十進制數a=1234*/
printf("a=%06d ",a);/*結果輸出6位十進制數a=001234*/
printf("a=%2d ",a);/*a超過2位,按實際值輸出a=1234*/
printf("*i=%4d ",*i);/*輸出4位十進制整數*i=12*/
printf("*i=%-4d ",*i);/*輸出左對齊4位十進制整數*i=12*/
printf("i=%p ",i);/*輸出地址i=06E4*/
printf("f=%f ",f);/*輸出浮點數f=3.141593*/
printf("f=6.4f ",f);/*輸出6位其中小數點後4位的浮點數f=3.1416*/
printf("x=%lf ",x);/*輸出長浮點數x=0.123457*/
printf("x=%18.16lf ",x);/*輸出18位其中小數點後16位的長浮點數x=0.1234567898765432*/
printf("c=%c ",c);/*輸出字元c=A*/
printf("c=%x ",c);/*輸出字元的ASCII碼值c=41*/
printf("s[]=%s ",s);/*輸出數組字元串s[]=Hello,Comrade*/
printf("s[]=%6.9s ",s);/*輸出最多9個字元的字元串s[]=Hello,Co*/
printf("s=%p ",s);/*輸出數組字元串首字元地址s=FFBE*/
printf("*p=%s ",p);/*輸出指針字元串p=Howdoyoudo*/
printf("p=%p ",p);/*輸出指針的值p=0194*/
getch();
retunr0;
}
③ double類型變數C語言里輸出時的格式說明符是什麼
double類型變數C語言里輸出時的格式說明符是%f。
float和double類型的輸出時的格式說明符都是%f,這是由於向那些未在原型中申明參數類型的函數傳遞參數時,float型會自動轉為double型頃腔唯,所以用%lf和%f結果都一樣。
例如:
doublea=3.1323;
floatb=0.234;
printf("%lf
",a);//輸出結果為3.1323
printf("%f ",b);//輸出結果為0.234
(3)c語言格式說明符擴展閱讀:
1、雙精度浮點型,此數據類型與單精度數據類型(float)相似,但精確度比float高,編譯時所佔的內存空間依不同的編雀培譯器而有所不同,是double float數據類型,C/C++中表示實型變數的一種變數類型。
2、此數據類型與單精度數據類型(float)相似,但精確度比float高,編譯時所佔的內存空間依不同的編譯器而有所不同,通常情況,圓吵單精度浮點數佔4位元組(32位)內存空間,其數值范圍為-3.4E38~3.4E+38,;雙精度型佔8 個位元組(64位)內存空間,其數值范圍為-1.7E308~+1.7E308。
資料來源:網路:雙精度浮點型
④ C語言中格式說明符%i是什麼意思
%i 就是 %d. 輸出帶符號的十進制整型
%i 是老式寫法。
i -- integer (英文 整數的意思)
d -- decimal (英文 十進制整數的意思)
⑤ c語言中的 %u 什麼意思啊
%d 有符號10進制整數
%i 有符號10進制整數
%o 無符號8進制整數
%u 無符號10進制整數
%x 無符號的16進制數字,並以小寫abcdef表示
%X 無符號的16進制數字,並以大寫ABCDEF表示
%F/f 浮點數
%E/e 用科學表示格式的浮點數
%g 使用%f和%e表示中的總的位數表示最短的來表示浮點數 G 同g格式,但表示為指數
%c 單個字元
%s 字元串
⑥ C語言的所有格式符。
%a,%A 讀入一個浮點值(僅C99有效)
%c 讀入一個字元
%d 讀入十進制整數
%i 讀入十進制,八進制,十六進制整數
%o 讀入八進制整數
%x,%X 讀入十六進制整數
%s 讀入一個字元串,遇空格、製表符或換行符結束。
%f,%F,%e,%E,%g,%G 用來輸入實數,可以用小數形式或指數形式輸入。
%p 讀入一個指針
%u 讀入一個無符號十進制整數
%n 至此已讀入值的等價字元數
%[] 掃描字元集合
%% 讀%符號
⑦ 請問c語言中格式說明符%#8od和%+06d 中#、+、0、分別是什麼意思
intprintf(constchar*format,[argument]);format參數輸出的格式,定義格式為:%[flags][width][.perc][F|N|h|l]type規定數據輸出方式,具體如下:1.type含義如下:d有符號10進制整數i有符號10進制整數o無符號8進制整數u無符號10進制整數x無符號的16進制數字,並以小寫abcdef表示X無符號的16進制數字,並以大寫ABCDEF表示F/f浮點數E/e用科學表示格式的浮點數g使用%f和%e表示中的總的位數表示最短的來表示浮點數G同g格式,但表示為指數c單個字元s字元串%顯示百分號本身p顯示一個指針,near指針表示為:XXXXfar指針表示為:XXXX:YYYYn相連參量應是一個指針,其中存放已寫字元的個數2.flags規定輸出格式,取值和含義如下:無右對齊,左邊填充0和空格-左對齊,右邊填充空格+在數字前增加符號+或-0將輸出的前面補上0,直到占滿指定列寬為止(不可以搭配使用-)空格輸出值為正時冠以空格,為負時冠以負號#當type=c,s,d,i,u時沒有影響type=o,x,X時,分別在數值前增加'0',"0x","0X"type=e,E,f時,總是使用小數點type=g,G時,除了數值為0外總是顯示小數點3.width用於控制顯示數值的寬度,取值和含義如下n(n=1,2,3)寬度至少為n位,不夠以空格填充0n(n=1,2,3)寬度至少為n位,不夠左邊以0填充*格式列表中,下一個參數還是width4.prec用於控制小數點後面的位數,取值和含義如下:無按預設精度顯示0當type=d,i,o,u,x時,沒有影響type=e,E,f時,不顯示小數點n(n=1,2,3)當type=e,E,f時表示的最大小數位數type=其他,表示顯示的最大寬度.*格式列表中,下一個參數還是width5.F|N|h|l表示指針是否是遠指針或整數是否是長整數F遠指針n近指針h短整數或單精度浮點數l長整數或雙精度浮點數