1樓:八哥說科技
呼叫函式 printf("%-8d", 《參量》); 即可。
解析:其中 "%-8d" 為格式化字串,格式化規定字元以"%"開始,後跟一個或幾個規定字元,「-」表示左對齊,不帶「-」號表示右對齊。數字「8」表示輸出寬度為8位,「d」表示輸出型別為整型。
常用的規定符有:%d 十進位制有符號整數、%u 十進位制無符號整數、%f 浮點數、%s 字串、%c 單個字元、%p 指標的值、%e 指數形式的浮點數。
2樓:風若遠去何人留
可以呼叫格式化輸出函式printf,同時設定格式化字串來達到效果。
1234為整型資料,依照要求,採用格式化字串"%-8d"。
輸出**為
printf("%-8d",1234);
解析:1 %d為整型的輸出格式標識;
2 -代表資料左對齊,如不加則預設右對齊;
3 8表示輸出佔8位,不足部分補空格。
3樓:匿名使用者
printf("%-8d", 1234 ); //按此格式輸出即可
4樓:暴走的小辣椒
printf("%-8d",a);
c語言的輸出預設的是左對齊還是右對齊?
5樓:
樓主你好。
左對齊還是右對齊是在有對齊的需要的時候才有意義的。由於你並沒有指定每個int值輸出的長度,因此int值有多長就會輸出多長,此時沒有討論左對齊或者右對齊的意義。
你只有加上%10d的時候(10只是我舉的例子),這時候限定了int值輸出長度為10,而12345這個int值的長度為5,這時候就有左對齊還是右對齊的分別了。
#include
void main(){
printf("%10d\n%10d\n%10d\n",12345,1234,123);
如果你使用%-10d這時候就是:
6樓:
預設格式是左對齊
方式1printf("%d\n",101010);
預設列印格式為左對齊;
方式2printf("%-10d\n",101010);
在列印數字寬度前面加一個「-」。
說明:數字寬度為10,如果要列印的位數小於10,則在後面補足空格;如果要列印的位數大於10,則列印所有的數字,不會截斷
右對齊
printf("%10d",101010);
在%和d之間加上數字寬度,就可以右對齊。
說明:數字寬度為10,如果要列印的位數小於10,左邊補足空格;如果要列印的位數大於10,則列印所有的數字,不會截斷。
7樓:聽不清啊
c語言的格式輸出是受格式符控制的。在沒有指定左對齊或是右對齊時,c的輸出是左對齊的。比方說printf("%s:\n%d\n%f\n",name,years,h);
直接使用%5d,%9ld,%6.2f,%7.1lf,%10s等等進行輸出時,是右對齊格式;
而使用%-5d,%-9ld,%-6.2f,%-7.1lf,%-10s等等進行輸出時,則是左對齊格式。
8樓:
在不涉及到指定輸出字元個數控制的時候,「-」號的加與不加都是一樣的。
9樓:匿名使用者
負號「-」為「左對齊」控制符,【一般所有輸出資料為右對齊格式】這句話是對的。為什麼這句printf("%d\n%d\n%d",a=12345,b=1234,d=123);體現不出效果呢?如果你這樣就知道了printf("%10d\n%-10d\n%10d",a=12345,b=1234,d=123);
10樓:迂堂派
qw qwert qwert
w er dfj
這樣是右對齊
11樓:
這樣怎麼可以看出左右對齊 ,你變成%4d 和 %-4d 看看?
編寫程式:已知長方形的長和寬(都是整數),求他的面積和周長,輸出時要求域寬為8且左對齊用c語言
12樓:匿名使用者
參考**如下:
#include
int main()
c語言輸出附加格式說明字元怎麼用
13樓:k拜
1.%msd。m為指定的輸出欄位的寬度。如果資料的位數小於m,則左端補以空格,若大於m,則按實際位數輸出,例如:
printf("%4d,%4d",a,b);
若a=123,b=12345,則輸出結果為
_123,12345
2.%ms,輸出的字串佔m列,如果本身長度大於m,則突破m的限制,將字串全部輸出。若串長度小於m,則左補空格。
3.%-ms,如果串長度小於m,則在m列範圍內,字串向左靠,右補空格。
4.%m.ns,輸出佔m列,但只取字串左端n個字元。這n個字元輸出在m列的右側,左補空格。
5.%-m.ns,其中m、n含義同上,n個字元輸出在m列範圍的左側,右補空格。如果n>m,則m自動取n值,即保證n個字元正常輸出。例如:
printf("%7.2s,%-5.3s\n","china","china");
則輸出結果為
_ _ _ _ _ ch,chi _ _
14樓:匿名使用者
這個,舉個例子吧:
int a=1000;
printf("%5d",a);
m和.n都是用在%號跟型別之間的,如果數值長度大於m會根據實際輸出,不足則又對齊
float a=1.23456
printf("%.3f",a);就是指顯示小數點後3位,4舍5入
c語言中怎樣使輸出的三列資料上端對齊例如 1 2 ** 2 3 *** 3 4 ****
15樓:物理公司的
1自己用格式定義控制
。例如:5位整數,左端對齊 用 %-5d 格式,右端對齊 用 %5d 格式。內
每3個數 換一行,容用 '\n' 控制。
程式例子:
#include
int main()
c語言輸入輸出格式
16樓:匿名使用者
常用的格式符還有 %n.mf -- 浮點數, 總長n ,m位小數 。(可不用,取預設長)
%c -- 單字元, %s -- 字串 ,%t -- 固定下一區(8 位)
注:printf()中每個格式符都要與同型別的變數掛鉤,一個對一個。
理解原樣照印:設 x= 3 y=5
輸出 為 x=3 y=2*x-1=5
17樓:金色潛鳥
%3d 是根據自己的需要決定的。例如輸出數為1到3位,你考慮各行輸出資料對齊,
你可以用 %3d, 例如:
int a=1,b=18,c=123;
int d=23,e=35,f=56;
printf("%3d %3d %3d\n",a,b,c);
printf("%3d %3d %3d\n",d,e,f);
白白1 空白18 空123
白23空白35空白56
------
%d 是預設格式。
----
輸入%3d 在特殊情況下用,一般用 %d 靈活。
特殊的例子:
int a,b;
scanf("%3d%3d",&a,&b); // 輸入資料之間無空隔,例如: 123456
printf("%d %d",a,b); // 輸出 123 456
如果不用%3d%3d, 123456 就會被看成一個數, 不處理成3位3位。
18樓:八神97坤
這個要看具體的情況,只是為了把輸出的東西間隔開而已,比如你輸出%d%d,x,y你希望看到的是輸出的值x,y是分開的,但輸出是xy,緊挨著的,比如:x =12 y =14,輸出就是1214你能分清楚這是兩個數嗎?所以就要用空格來把它們間隔開來,%3d預設不足三位就不空格,大體就這樣的
19樓:匿名使用者
(沒有完全明白你的意思)
%3d意思是總輸出佔三列,如果資料本身超過3列則會使得資料損失,為了避免這樣的事情發生,你可以寫一個測試程式語段 或goto語句, 放在你所標記的printf語句前
if (x>=100) printf("x is bigger than 99 ") ;
exit;
但你也可以使用註釋 ,告訴別人給x賦值的時候不要超過兩位數,以上的說法針對整數,若是小數就複雜了
c語言。先輸入整數n,在輸入n個整數,輸出它們的平均值。儘量
include int main printf 3f n n float sum n 本結果保留 dao三位小數 版 可自權行調整 用c語言程式設計 要求用陣列,先輸入一個正整數n,在輸入n個整數,求其平均值 保留兩位小數 float a 10 sum,m int n sum 0 scanf d n...
用c語言程式編寫輸入四位整數如1234使
希望我的回答對你的學習有幫助 include int main 計算各位之和,並倒序輸出 for i 0 i 4 i printf n printf d n fdsum return 0 4位數 number個位 number 10十位 number 10 10百位 number 100 10千位 ...
c語言輸入正整數n將其逆序輸出例如輸入
c語言輸入一個正整數n,將其逆序輸出 include include int main printf n return 0 執行結果如下 就不給你寫了,提供演算法吧。首先判斷輸入的正整數的位數,例如1000 n 9999 然後輸出m 注意,c語言裡方括號是取整運算子號 因為是整型運算,其實方括號可以...