格式化輸入和輸出

    printf ,scanf,standerd input stream,standerd output stream,gets,puts,getchar,putchar 

都包含在頭文件stdio中//(standerd input,standerd output)的縮寫,同理stdin//就是standerd input
第一 帶域寬和精度的打印

域寬(Fileld width)就是指:打印區域的準確大小(右對齊,加負號就是左對齊)

精度:表示要打印的最少的數字位數。(如果將要打印的數字小於精度,同時精度前面帶有若干個零或者小數點,則再打印出來的數值前加入若干個零,以確保位數與精度相等;若不帶零或小數點則用空格代替)
代表域寬的一個整數,將被插入到百分號與轉化字符中間,精度也一樣。

printf("%9.3f",123.23656);
輸出:   123.236

這裏要提示一下\t 就是把光標右移一個TAB(水平製表符)的位置。

scanf("%100[^\n]",a);

這個的意思就是一直到\n才結束,網上的例子是
%[^a] 匹配非a的任意字符,貪婪性
從下面兩個小程序可以看出它的意思。

#include <stdio.h> 
main() 
{
 char a[256]; 
 scanf("%1024[^\n]", a);
 printf("%s\n",a);
}

輸入:asfdj j;asdlkf aslkdjf sdajkfjsa;ldjflk;asjf
輸出:asfdj j;asdlkf aslkdjf sdajkfjsa;ldjflk;asjf

這個程序的意思是讀入字符,直到遇到’\n’也就是回車結束。

#include <stdio.h> 
main() 
{
 char a[256]; 
 scanf("%1024[^ ]", a);
 printf("%s\n",a);
}

輸入:asfdj j;asdlkf aslkdjf sdajkfjsa;ldjflk;asjf
輸出:asfdj

這個程序的意思是讀入字符,直到遇到’ ‘也就是空格結束。
也就是說 可以利用這個來解決 到空格就結束的情況。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章