當前位置:首頁 » 編程語言 » c語言格式字元的附加字元
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言格式字元的附加字元

發布時間: 2022-05-30 19:33:43

A. c語言的所有格式符。

%a,%A 讀入一個浮點值(僅C99有效) %c 讀入一個字元 %d 讀入十進制整數 %i 讀入十進制,八進制,十六進制整數 %o 讀入八進制整數 %x,%X 讀入十六進制整數 %s 讀入一個字元串,遇空格、製表符或換行符結束。 %f,%F,%e,%E,%g,%G 用來輸入實數,可以用小數形式或指數形式輸入。 %p 讀入一個指針 %u 讀入一個無符號十進制整數 %n 至此已讀入值的等價字元數 %[] 掃描字元集合 %% 讀%符號 附加格式說明字元表修飾符說明 L/l 長度修飾符 輸入"長"數據 h 長度修飾符 輸入"短"數據 W 整型常數 指定輸入數據所佔寬度 * 表示本輸入項在讀入後不賦值給相應的變數

B. C語言格式字元 可以根據需要在「%」與格式字元之間插入「寬度說明」、左對齊符號「-」、前導零符號「

一個比較簡單的做法是初始化一個二維數組,數組里把應該顯示皮卡丘的位置輸出可顯示字元。其他位置為空。然後遍歷出結果即可。
如果是需要演算法來實現的話,難度會有點高。

C. C語言轉換格式符大全

int printf(const char *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指針表示為:XXXX
far 指針表示為:XXXX:YYYY
n 相連參量應是一個指針,其中存放已寫字元的個數
2.flags 規定輸出格式,取值和含義如下:
無 右對齊,左邊填充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填充 * 格
式列表中,下一個參數還是width 4.prec 用於控制小數點後面的位數,取值和含義如下:
無 按預設精度顯示
0 當type=d,i,o,u,x時,沒有影響
type=e,E,f時,不顯示小數點
n(n=1,2,3...) 當type=e,E,f時表示的最大小數位數
type=其他,表示顯示的最大寬度 .*
格式列表中,下一個參數還是width
5.F|N|h|l 表示指針是否是遠指針或整數是否是長整數
F 遠指針
n 近指針
h短整數或單精度浮點數
l 長整數或雙精度浮點數
1.一般格式
printf(格式控制,輸出表列)
例如:printf("i=%d,ch=%c\n",i,ch);
說明:
(1)「格式控制」是用雙撇號括起來的字元串,也稱「轉換控制字元串」,它包括兩種信息:
①格式說明:由「%」和格式字元組成,它的作用是將輸出的數據轉換為指定的格式輸出。
②普通字元,即需要原樣輸出的字元。
(2)「輸出表列」是需要輸出的一些數據,可以是表達式
(3)printf函數的一般形式可以表示為
printf(參數1,參數2,……,參數n)
功能是將參數2~參數n按參數1給定的格式輸出
2.格式字元(9種)
(1)d(或i)格式符。用來輸出十進制整數,有以下幾種用法:
①%d,按整型數據的實際長度輸出。
②%md,m為指定的輸出欄位的寬度。如果數據的位數小於m,則左端補以空格,若大於m,則按實際位數輸出。
③%ld(%mld 也可),輸出長整型數據。
例如:long a=123456;
printf("%ld",a);
(2)o格式符,以八進制數形式輸出整數。格式:%o,%mo,%lo,%mlo都可。
(3)x(或X)格式符,以十六進制數形式輸出整數。格式:%x,%mx,%lx,%mlx都可。
(4)u格式符,用來輸出unsigned型數據,即無符號數,以十進制數形式輸出。格式:%u,%mu,%lu都可。
參見:li4-3.c/*無符號數據的輸出*/
(5)c格式符,用來輸出一個字元。格式:%c,%mc都可。
(6)s格式符,用來輸出一個字元串。格式:%s,%ms,%-ms,%m.ns,%-m.ns都可。
參見:li4-5.c /*字元串的輸出*/
(7)f格式符,用來輸出實數(包括單、雙精度),以小數形式輸出。格式:%f,%m.nf,%-m.nf都可。
注意:單精度實數的有效位數一般為7位,雙精度為16位。
參見:li4-6.c/*輸出單精度實數時的有效位數*/
li4-7.c/*輸出雙精度實數時的有效位數*/
li4-8.c/*輸出實數時指定小數位數*/
(8)e(或E)格式符,以指數形式輸出實數。格式:%e,%m.ne,%-m.ne都可。
(9)g(或G)格式符,用來輸出實數,它根據數值的大小,自動選f格式或e格式(選擇輸出時占寬度較小的一種)。
3.說明
(1)除了X、E、G(用大寫字母表示)外,其他格式字元必須用小寫字母;
(2)「格式控制」字元串內可以包含轉義字元;
(3)如果想輸出字元「%」,則應該在「格式控制」字元串中用連續兩個%表示,如:
printf("%f%%",1.0/3);
(4)格式字元表參見下表
表4.1 printf格式字元
格式字元 說 明
d,i 以帶符號的十進制形式輸出整數(正數不輸出符號)
o 以八進制無符號形式輸出整數(不輸出前導符0)
x,X 以十六進制無符號形式輸出整數(不輸出前導符0x),用x則輸出十六進制數的a~f時以小寫形式輸出,用X時,則以大寫字母輸出
u 以無符號十進制形式輸出整數
c 以字元形式輸出,只輸出一個字元
s 輸出字元串
f 以小數形式輸出單、雙精度數,隱含輸出6位小數
e,E 以指數形式輸出實數
g,G 選用%f或%e格式中輸出寬度較短的一種格式,不輸出無意義的0
表4.2 printf的附加格式說明字元
字元
說明
字母l
用於長整型整數,可加在格式符d、o、x、u前面
m(代表一個正整數)
數據最小寬度
n(代表一個正整數)
對實數,表示輸出n位小數;對字元串,表示截取的字元個數
-
輸出的數字或字元在域內向左靠

D. c語言中 如何編輯字元串 如何 格式字元串 在字元串中加上變數i所對應的值 應該用什麼函數

strcat

原型:extern char *strcat(char *dest,char *src);

用法:#include <string.h>

功能:把src所指字元串添加到dest結尾處(覆蓋dest結尾處的'')並添加''。

說明:src和dest所指內存區域不可以重疊且dest必須有足夠的空間來容納src的字元串。返回指向dest的指針。

舉例:

//strcat.c

#include<syslib.h>
#include<string.h>

main()
{
chard[20]="GoldenGlobal";
char*s="View";

clrscr();

strcat(d,s);
printf("%s",d);

getchar();
return0;
}

E. C語言printf附加格式字元問題,求詳細解釋

其實此題主要考察scanf的附加格式字元作用。scanf中%2d表示只接收兩位整數,所以a=98;%3f表示只接收3位浮點數,所以b=765;%4f表示只接收4位浮點數,所以c=4321。printf的附加格式字元只是對相應的變數增加了a=、b=和c=及各輸出變數間加了個逗號,且要注意浮點數默認小數是6位,所以最後輸出是:
a=98,b=765.000000,c=4321.000000。顯然C正確。

F. c語言中,%c和%s在輸入和輸出字元串的時候有什麼區別

輸入:

1、賦值

%c輸入函數只會對一個位元組空間賦值,而%s會一直賦值,直到輸入中遇到空白字元為止。

2、地址符

輸入的時候scanf("%c", &a);這里的&不能少,而scanf("%s",s);這里不能有&符號。

輸出:

1、長度

%c只能輸出一個字元,%s輸出的是一串字元,直到某一個位元組內存的元素為字元''時,輸出此字元並且定址結束。

(6)c語言格式字元的附加字元擴展閱讀

轉換說明符

1、%a(%A):浮點數、十六進制數字和p-(P-)記數法(C99)

2、%c:字元

3、%d:有符號十進制整數

4、%f:浮點數(包括float和doulbe)

5、%e(%E):浮點數指數輸出[e-(E-)記數法]

6、%g(%G):浮點數不顯無意義的零"0"

7、%i:有符號十進制整數(與%d相同)

8、%u:無符號十進制整數

9、%o八進制整數

10、%x(%X):十六進制整數0f(0F)

11、%p:指針

12、%s:字元串

13、%%:"%"

格式字元串

語法:〔標志〕〔輸出最少寬度〕〔.精度〕〔長度〕類型

"%-md" : 左對齊,若m比實際少時,按實際輸出。

"%m.ns" : 輸出m位,取字元串(左起)n位,左補空格,當n>m or m省略時m=n

"%m.nf" : 輸出浮點數,m為寬度,n為小數點右邊數位

"%3.1f" : 輸入3852.99 輸出3853.0

G. 急求C語言中的格式字元表

1.%d格式符。它的作用是將其對應的表達式的值按照十進制整數方式輸出。

(2)%md格式符。它的作用是按照m指定的寬度進行輸出。

(3)%ld格式符。它的作用是將其對應的表達式的值按照長整數方式輸出。

(4)%mld格式符。這個格式符的作用和上面的作用一樣。

2.%o格式符。它的作用是將其對應的表達式的值按照八進制整數方式輸出。

3.%x格式符。它的作用是將其對應的表達式的值按照十六進制整數方式輸出。

4.%u格式符。它的作用是將其對應的表達式的值按照十進制無符號整數方式輸出。

5.%c格式符。它的作用是將其對應的表達式的值按照字元方式進行輸出。

6.%s格式符。它的作用是輸出一個字元串。

7.%f格式符。它的作用是將其對應的表達式的值按照實數方式進行輸出。

8.%e格式符。它的作用是將其對應的表達式的值按照指數方式進行輸出。

9.%g格式符。它的作用是將其對應的表達式的值按照實數與指數方式中較短的一種方式進行輸出。

10.%%格式符。它的作用是輸出一個百分號。

H. c語言格式字元詳細說明

c語言中的格式說明符,以%開頭,後面接上字母,如%d表示整數,%f表示浮點數,%s表示字元串,%c表示字元等等!

擴展:格式說明符詳細說明

① d格式:用來輸出十進制整數。有以下幾種用法:
%d:按整型數據十進制的實際長度輸出。
%md:m為指定的輸出欄位的寬度。如果數據的位數小於m,則左端補以空格,若大於m,則按實際位數輸出。
%ld:輸出長整型數據。

② o格式:以無符號八進制形式輸出整數。
%d:按整型數據八進制的實際長度輸出。
%lo:對長整型可以用格式輸出
%mo:指定欄位寬度用格式輸出

③ x格式:以無符號十六進制形式輸出整數。
%x:按整型數據十六進制的實際長度輸出。
%lx:對長整型可以用格式輸出
%mx:指定欄位寬度用格式輸出

④ u格式:以無符號十進制形式輸出整數。
%u:按無符號整型數據十進制的實際長度輸出。
%lu:對長整型可以用格式輸出
%mu:指定欄位寬度用格式輸出

⑤ c格式:輸出一個字元。
⑥ s格式:用來輸出一個串。有幾中用法
%s:例如:printf("%s", "CHINA")輸出"CHINA"字元串(不包括雙引號)。
%ms:輸出的字元串佔m列,如字元串長度大於m,將字元串全部輸出。若串長小於m,則左補空格。
%-ms:如果串長小於m,則在m列范圍內,字元串向左靠,右補空格。
%m.ns:輸出佔m列,但只取字元串中左端n個字元。這n個字元輸出在m列的右側,左補空格。
%-m.ns:其中m、n含義同上,n個字元輸出在m列范圍的左側,右補空格。如果n>m,則自動取n值,即保證n個字元正常輸出。

⑦ f格式:用來輸出實數(包括單、雙精度),以小數形式輸出。有以下幾種用法:
%f:不指定寬度,整數部分全部輸出並輸出6位小數。
%m.nf:輸出共佔m列,其中有n位小數,如數值寬度小於m左端補空格。
%-m.nf:輸出共佔n列,其中有n位小數,如數值寬度小於m右端補空格。

⑧ e格式:以指數形式輸出實數。可用以下形式:
%e:數字部分(又稱尾數)輸出6位小數,指數部分佔5位或4位。
%m.ne和%-m.ne:m、n和」-」字元含義與前相同。
此處n指數據的數字部分的小數位數,m表示整個輸出數據所佔的寬度。

⑨ p格式:輸出指針地址

I. C語言 怎麼把char型附加在字元串的後面

//編譯環境VC6.0
//該函數與
strcat
實現的功能相同
#include
<string.h>
#include
<stdio.h>
int
main()
{
char
str1[10]="abc";
char
str2[10]="123";
char
ch;
int
index1,index2;
printf("str1分配的內存是%d\n",sizeof(str1));
printf("str1的字元串長度是%d\n",strlen(str1));
printf("\n現將str2中的字元逐個添加到str1的末尾:\n");
index2=0;
do
{
index1=strlen(str1);
//str1的字元串長度
ch=str2[index2];
//從str2中讀取一個字元
str1[index1]=ch;
//將這個字元寫入str1中
str1[index1+1]='\0';
//str1結束符
index2++;
}while(ch!='\0');
printf("str1=%s\n",str1);
printf("str1分配的內存是%d\n",sizeof(str1));
printf("str1的字元串長度是%d\n",strlen(str1));
printf("該函數與strcat函數實現的功能相同\n");
return
0;
}

J. 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;
}