c c 輸入輸出技巧

2021-08-19 22:12:10 字數 1833 閱讀 2735

c:

小數的四捨五入問題

小數用 %.xf 輸出的話 是會自動四捨五入的

比如說

double e = 2.718, c = 3.141;

printf("%.2lf\n", e);

printf("%.2lf\n", c);

printf("%.2lf\n", (int)(e * 100) / 100.0);

printf("%.2lf\n", (int)(c * 100) / 100.0);

執行結果

也就是說 如果要求 不要讓它進製 像整數除法一樣,那麼就要類似於那樣的操作

如果要保留任意 從鍵盤輸入的n位小數輸出乙個數字 那怎麼辦呢

printf("%.*lf\n",c,d);   // c 表示保留的小數字數,它替代的是*的位置
對齊問題:

printf("%-5d\n%5d", a, b); //左對齊 無負號  右對齊
填充問題

printf("%05d\n", a); // 如果輸出的位數不夠五位  自動用0補齊 或者還可以用空格補齊  好像不能填充其他符號吧,,c語言
讀入問題

scanf("%1d", &a);// 這樣就會唯讀進來一位數字
讀入字元問題

printf(" %c", &c); // 這樣就可以防止讀入空格 因為%c 前面的空格可以吸收空格和空行 就不用再打 getchar()
按格式讀入問題

比如說有的題目的input 要求是 (a, b)

但實際上 我們只需要 讀入a 和 b 就可以了

scanf("(%d,%d)", &a, &b);// 只要按照它的格式 來就可以了 就像前面的空格可以吸收空格和空行一樣
c++保留小數問題

double e = 2.718, c = 3.141;

cout

<< fixed; // 表示按照小數形式輸出小數 預設是按照科學計數法輸出小數

cout.precision(2); // 表示輸出的小數保留幾位

cout

<< e << " "

<< c << endl;

如果要按格式輸出 比如左對齊 右對齊

double e = 2.718, c = 3.141; 

cout

<< setw (20); // 寬度

cout

<< left << e << endl; // 左對齊

cout

<< right << e << endl; // 右對齊

填充問題

double e = 2.718, c = 3.141;

cout.fill('*'); // 填充'*' 實際上 ' ' 裡面是隨便填的 不像 c 裡面 只能填充0 和 空字元

cout

<< left << setw(20) << e << endl; // 表明 左對齊 寬度20

cout

<< right << setw(20) << e << endl; // 表明 右對齊 寬度20

c c 輸入輸出技巧

c 小數的四捨五入問題 小數用 xf 輸出的話 是會自動四捨五入的 比如說double e 2.718,c 3.141 printf 2lf n e printf 2lf n c printf 2lf n int e 100 100.0 printf 2lf n int c 100 100.0 執行...

C C 輸入 輸出

在c語言中,我們的輸入輸出靠的是標準庫函式,最常用的就是 scanf 和 printf 這一對了。那麼c 又是怎麼樣實現輸入輸出的呢?下面來寫c 的第乙個程式!include using namespace std int main 不難看出,它有以下特徵 1.使用cout標準輸出 控制台 和cin...

C C 輸入輸出

符號 描述 h0 short型的八進位制 0int型的八進位制 l0long型的八進位制 hdshort型的十進位制 dint型的十進位制 ldlong型的十進位制 hx,hx short型的十六進製制,x表示小寫,x表示大寫 x,x int型的十六進製制,x表示小寫,x表示大寫 lx,lx lon...