A. c語言域寬設置怎麼右邊填充
C語言的域寬是要列印的數字或字元串的位(個)數;
假設你設置的數所佔的不足你的域寬值,則自動用空格補足,
而如果數本身就佔了域寬值或更多
,則這個設置被忽略。
這個並不存在左邊填充和右邊填充的概念。
如果實在想要實現右邊填充,將其轉換為字元串,然後從右邊輸出就行。
不明白繼續追問!
B. C語言的域寬
如果位段不夠,系統會忽略4位這個限制。比如%2d,1000,系統仍然會輸出1000的。
C. C++編程裡面的設置域寬是什麼意思
C++編程裡面的設置域寬意思是輸出的內容所佔的總寬度,如果域寬大於要輸出內容的寬度是默認用空格填充。
編程就是讓計算機為解決某個問題而使用某種程序設計語言編寫程序代碼,並最終得到相應結果的過程。
為了使計算機能夠理解人的意圖,人類就必須要將需解決的問題的思路、方法、和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算機之間交流的過程就是編程。
編程:設計具備邏輯流動作用的一種"可控體系"【注:編程不一定是針對計算機程序而言的,針對具備邏輯計算力的體系,都可以算編程】
D. C++中輸入輸出時如何控制域寬
看看下面的這個例子:使用 setw(2) 這樣的控制域寬。
#include <iostream>
#include <iomanip>
usingnamespace std;
void main()
{
int x=1000;
double y=1.23456789;
cout<<"默認x值:"<<x<<endl;
cout<<"十進制:"<<dec<<x<<endl; //dec oct hex 會一直作用。
cout<<"八進制:"<<oct<<x<<endl;
cout<<"十六進制:"<<hex<<x<<endl;
cout<<"十六進制(大寫字母):"<<hex<<uppercase<<x<<endl<<endl;
cout<<"默認y值(左對齊且有效數字位數為6):"<<y<<endl;
cout<<"寬度為10並右對齊:"<<setw(10)<<right<<y<<endl;
cout<<"寬度為8:"<<setw(8)<<y<<endl;
cout<<"寬度為4:"<<setw(4)<<y<<endl;
cout<<"用*號填充空位(10位寬度):"<<setfill('*')<<setw(10)<<y<<endl; //setw(int i) 只對緊隨的數據顯示有影響。控制多個數據要多個setw()method.
cout<<"設精度為3輸出y(不包括小數點):"<<setprecision(3)<<y<<endl; //setprecision(int i) 會一直作用
cout<<"設精度為8輸出y(不包括小數點):"<<setprecision(8)<<y<<endl;
cout<<"顯示正負號:"<<showpos<<y<<endl;
cout<<"用科學計數法表示y:"<<scientific<<y<<endl;
cout<<"用科學計數法表示y(控制E前數據的小數點後位數):"<<scientific
<<setprecision(3)<<y<<endl;
}
E. C語言中「輸出域寬」的作用
用於存放輸出數據的寬度稱為「域寬」.如果域寬大於被列印數據的寬度,數據通常會在域內右對齊.如果輸出值的寬度大於域寬時,域寬是自動增長的.域寬通常插在百分號和轉換說明符之間.。
輸出時的預設寬度,如果實際輸出寬度小於域寬,則會根據具體要求用空格或者0填充。
F. c語言中s格式符可以指定域寬嗎
標准C語言庫函數fprintf/printf格式字元串的轉換說明形式是這樣的:
%[標志][最小輸出寬度][.精度][長度修正符]類型
方括弧括起來是可選項。
標志是0或多個標志字元,可以是任意順序,常用有以下幾個:
- 左對齊,預設是右對齊。
+ 帶符號的值前面總是有個符號,也就是正數前面有+號,負數前面有-號。
0 輸出值的寬度小於最小寬度的話,用0填充,預設是用空格填充。
最小輸出寬度就是你說的那個m,這個必須是10進制整數常量,開頭不能是0,不然變成上面的0標志了。如果輸出的值小於這個寬度,根據上面的對齊標志決定左對齊還是右對齊,剩下的用填充字元填充,預設是空格,用0標志指定的話是0。
精度一般是小數點後面跟1個十進制數,對於整型,表示要輸出的最少位數,不足的話前面會補0,對於小數,表示小數點後面輸出幾位小數。
長度修正符修正後面類型的輸出長度。l表示long或unsigned long,ll表示long long int或unsigned long long int,h表示short或unsigned short,hh表示為char或unsigned char,L表示long double。
最後的類型就是常見的d,o,x,f,c,s一類的,這個意思就不用說了吧。
最小輸出寬度和長度修飾符是不沖突的,所以要輸出長整型又要指定輸出欄位寬度,必須兩個都指定。
%8ld,%8lo,%8lx這樣都可以。
而%mlo,%mlx是錯誤的的轉換說明,因為最小輸出寬度必須是數字,寫成m根本就不會輸出。
上面的選項都還有一些不常用的,具體可以參考C語言標准。